Ignore:
Timestamp:
Nov 22, 2014, 10:54:05 PM (10 years ago)
Author:
alloc
Message:

fixes

File:
1 edited

Legend:

Unmodified
Added
Removed
  • binary-improvements/7dtd-server-fixes/src/CustomCommands/TeleportPlayer.cs

    r189 r203  
    22using System;
    33using System.Collections.Generic;
     4using System.Reflection;
    45using UnityEngine;
    56
     
    89        public class TeleportPlayer : ConsoleCommand
    910        {
     11                private MethodInfo NetConnection_SendPackage = null;
     12
    1013                public TeleportPlayer (ConsoleSdtd cons) : base(cons)
    1114                {
     15                        Type typeClientInfo = Assembly.GetAssembly (typeof(ClientInfo)).GetType ("ClientInfo");
     16                        Type typeNetConnection = typeClientInfo.GetField ("netConnection").FieldType.GetElementType ();
     17                        MethodInfo[] mis = typeNetConnection.GetMethods ();
     18                        foreach (MethodInfo mi in mis) {
     19                                ParameterInfo[] pis = mi.GetParameters ();
     20                                if (pis.Length == 1) {
     21                                        if (typeof (Package).Equals (pis[0].ParameterType)) {
     22                                                NetConnection_SendPackage = mi;
     23                                        }
     24                                }
     25                        }
    1226                }
    1327
     
    7286                                        NetPackage_EntityPosAndRot pkg = new NetPackage_EntityPosAndRot (p1.Entity);
    7387
    74                                         p1.ClientInfo.netConnection [0].Send (pkg);
     88                                        if (NetConnection_SendPackage != null) {
     89                                                NetConnection_SendPackage.Invoke (p1.ClientInfo.netConnection [0], new object[] {pkg});
     90                                        }
    7591                                }
    7692                        } catch (Exception e) {
Note: See TracChangeset for help on using the changeset viewer.