Changeset 113 for binary-improvements


Ignore:
Timestamp:
Jul 27, 2014, 11:30:15 AM (5 years ago)
Author:
alloc
Message:

fixes

Location:
binary-improvements
Files:
2 added
6 edited

Legend:

Unmodified
Added
Removed
  • binary-improvements/7dtd-server-fixes/7dtd-server-fixes.csproj

    r109 r113  
    5959    <Compile Include="src\TelnetCommands\Reply.cs" />
    6060    <Compile Include="src\TelnetCommands\Kill.cs" />
     61    <Compile Include="src\TelnetCommands\ListLandProtection.cs" />
     62    <Compile Include="src\TelnetCommands\RemoveLandProtection.cs" />
    6163  </ItemGroup>
    6264  <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
  • binary-improvements/7dtd-server-fixes/src/CommandExtensions.cs

    r109 r113  
    1010                        manager.m_GUIConsole.AddCommand (new GetTime (manager.m_GUIConsole));
    1111                        manager.m_GUIConsole.AddCommand (new Kill (manager.m_GUIConsole));
     12                        manager.m_GUIConsole.AddCommand (new ListLandProtection (manager.m_GUIConsole));
    1213                        manager.m_GUIConsole.AddCommand (new ListPlayersExtended (manager.m_GUIConsole));
     14                        manager.m_GUIConsole.AddCommand (new RemoveLandProtection (manager.m_GUIConsole));
    1315                        manager.m_GUIConsole.AddCommand (new Reply (manager.m_GUIConsole));
    1416                        manager.m_GUIConsole.AddCommand (new SayToPlayer (manager.m_GUIConsole));
  • binary-improvements/7dtd-server-fixes/src/TelnetCommands/Kill.cs

    r112 r113  
    2020        public override void Run (string[] _params)
    2121        {
     22                m_Console.SendResult("Command \"kill\" is currently not implemented!");
     23                return;
     24                /*
    2225                try {
    2326                        if (_params.Length != 1) {
     
    3336                        }
    3437
    35                         CommonMappingFunctions.GetEntityPlayer(ci).Kill(null);
     38                        EntityPlayer p = CommonMappingFunctions.GetEntityPlayer(ci);
     39                        p.Stats.Health.Value = 1;
     40                        p.Stats.SendAll();
    3641                        m_Console.SendResult ("Killed player " + _params[0]);
    3742                } catch (Exception e) {
    3843                        Log.Out ("Error in Kill.Run: " + e);
    39                 }
     44                }*/
    4045        }
    4146}
  • binary-improvements/NamePatcher/ManualPatches.cs

    r107 r113  
    6161                public static void applyManualPatches (ModuleDefinition mainModule)
    6262                {
    63                         renameMember (mainModule.GetType ("ItemBlock").BaseType.Resolve (), "ItemBase");
    64 
    6563                        FieldDefinition fd;
    6664                        MethodDefinition md;
     65                        bool renamed = false;
     66
     67
     68                        renamed = false;
     69                        foreach (TypeDefinition td in mainModule.Types) {
     70                                md = getMethodInType (td, (method, isConstructor, retType, paramCount, paramList) => {
     71                                        return !isConstructor && method.IsPublic && method.IsStatic && paramCount == 0 && retType.Name.Equals ("Boolean") && method.Name.Equals ("CheckIfStartedAsDedicatedServer");
     72                                }
     73                                );
     74                                if (md != null) {
     75                                        renameMember (td, "StaticDirectories");
     76                                        renamed = true;
     77                                        break;
     78                                }
     79                        }
     80                        if (!renamed)
     81                                Console.WriteLine ("FAILED: StaticDirectories");
     82                        renamed = false;
     83
     84
     85                        renameMember (mainModule.GetType ("ItemBlock").BaseType.Resolve (), "ItemBase");
     86
     87
     88                        fd = getFieldInType (mainModule.GetType ("PersistentPlayerList"), (field, fieldType) => {
     89                                return fieldType.FullName.Contains ("Dictionary") && fieldType.FullName.Contains ("Vector3i") && fieldType.FullName.Contains ("PersistentPlayerData"); }
     90                        );
     91                        if (fd != null) {
     92                                makeFieldPublic (fd);
     93                                renameMember (fd, "positionToLPBlockOwner");
     94                        } else {
     95                                Console.WriteLine ("FAILED: PersistentPlayerList.positionToLPBlockOwner");
     96                        }
    6797
    6898
     
    78108
    79109
     110                        // Fields in PlayerDataFile
    80111                        fd = getFieldInType (mainModule.GetType ("PlayerDataFile"), (field, fieldType) => {
    81112                                return field.Name.Equals ("inventory") && fieldType.IsArray; }
     
    109140
    110141
     142                        // Fields in AdminTools
    111143                        fd = getFieldInType (mainModule.GetType ("AdminTools"), (field, fieldType) => {
    112144                                return fieldType.FullName.Contains ("List") && fieldType.FullName.Contains ("AdminToolsCommandPermissions"); }
     
    120152
    121153
     154                        // Fields and methods in World
    122155                        fd = getFieldInType (mainModule.GetType ("World"), (field, fieldType) => {
    123156                                return fieldType.FullName.Equals ("System.UInt64"); }
     
    130163
    131164
     165                        md = getMethodInType (mainModule.GetType ("World"), (method, isConstructor, retType, paramCount, paramList) => {
     166                                return !isConstructor && paramCount == 1 && paramList [0].ParameterType.Name.Equals ("PersistentPlayerData") && method.IsPrivate && retType.Name.Equals ("Boolean");
     167                        }
     168                        );
     169                        if (md != null) {
     170                                md.IsPrivate = false;
     171                                md.IsPublic = true;
     172                                renameMember (md, "LandClaimIsActive");
     173                        } else {
     174                                Console.WriteLine ("FAILED: World.LandClaimIsActive()");
     175                        }
     176
     177
     178                        md = getMethodInType (mainModule.GetType ("World"), (method, isConstructor, retType, paramCount, paramList) => {
     179                                return !isConstructor && paramCount == 1 && paramList [0].ParameterType.Name.Equals ("PersistentPlayerData") && method.IsPrivate && retType.Name.Equals ("Single");
     180                        }
     181                        );
     182                        if (md != null) {
     183                                md.IsPrivate = false;
     184                                md.IsPublic = true;
     185                                renameMember (md, "LandClaimPower");
     186                        } else {
     187                                Console.WriteLine ("FAILED: World.LandClaimPower()");
     188                        }
     189
     190
     191                        // Fields in GameManager
    132192                        fd = getFieldInType (mainModule.GetType ("GameManager"), (field, fieldType) => {
    133193                                return fieldType.FullName.Equals ("ConnectionManager"); }
     
    141201
    142202
     203                        // Fields in ConnectionManager
    143204                        fd = getFieldInType (mainModule.GetType ("ConnectionManager"), (field, fieldType) => {
    144205                                return fieldType.FullName.Equals ("GameManager"); }
     
    176237                        TypeDefinition typeConsole = null;
    177238
     239                        // Fields in NetTelnetServer
    178240                        fd = getFieldInType (mainModule.GetType ("NetTelnetServer"), (field, fieldType) => {
    179241                                return NameNormalizer.makeValidName (fieldType.Name) != null; }
Note: See TracChangeset for help on using the changeset viewer.