private void EnsureInit()
    {
        if (registerTile != null)
        {
            return;
        }
        if (!isWindowedDoor)
        {
            closedLayer = LayerMask.NameToLayer("Door Closed");
        }
        else
        {
            closedLayer = LayerMask.NameToLayer("Windows");
        }
        spriteRenderer     = GetComponentInChildren <SpriteRenderer>();
        closedSortingLayer = SortingLayer.NameToID("Doors Closed");
        openSortingLayer   = SortingLayer.NameToID("Doors Open");
        openLayer          = LayerMask.NameToLayer("Door Open");
        registerTile       = gameObject.GetComponent <RegisterDoor>();
        tileChangeManager  = GetComponentInParent <TileChangeManager>();

        hackingProcess = GetComponent <HackingProcessBase>();
        isHackable     = hackingProcess != null;
        hackingLoaded  = false;
    }
	public void ServerOnOpened(ConnectedPlayer connectedPlayer)
	{
		HackingProcessBase directHackReference = Provider.GetComponentInChildren<HackingProcessBase>();
		ItemStorage hackStorage = hackProcess == null ? Provider.GetComponentInChildren<ItemStorage>() : hackProcess.ItemStorage;
		if (hackStorage != null)
		{
			hackStorage.ServerAddObserverPlayer(connectedPlayer.GameObject);
		}
	}
        private void Awake()
        {
            HackingProcessBase = GetComponent <HackingProcessBase>();
            if (!CustomNetworkManager.IsServer)
            {
                return;
            }

            integrity = GetComponent <Integrity>();

            integrity.OnWillDestroyServer.AddListener(WhenDestroyed);
        }
Exemple #4
0
    void Start()
    {
        if (Provider != null)
        {
            hackProcess = Provider.GetComponentInChildren <HackingProcessBase>();
            hackProcess.RegisterHackingGUI(this);

            if (hackProcess.isClient && PlayerManager.LocalPlayer != null)
            {
                RequestHackingNodeConnections.Send(PlayerManager.LocalPlayer, hackProcess.gameObject);
            }
        }
    }
        private void Start()
        {
            if (Provider != null)
            {
                hackProcess = Provider.GetComponentInChildren <HackingProcessBase>();
                hackProcess.OnChangeServer.AddListener(SetUpData);

                if (CustomNetworkManager.IsServer)
                {
                    SetUpData();
                }
            }
        }
    public override void Process()
    {
        LoadMultipleObjects(new uint[] { Player, HackableObject });
        int[] connectionToAdd = JsonConvert.DeserializeObject <int[]>(JsonData);

        var playerScript = NetworkObjects[0].GetComponent <PlayerScript>();
        var hackObject   = NetworkObjects[1];
        HackingProcessBase hackingProcess = hackObject.GetComponent <HackingProcessBase>();

        if (hackingProcess.ServerPlayerCanAddConnection(playerScript, connectionToAdd))
        {
            hackingProcess.AddNodeConnection(connectionToAdd);
            HackingNodeConnectionList.Send(NetworkObjects[0], hackObject, hackingProcess.GetNodeConnectionList());
        }
    }
        public override void Process(NetMessage msg)
        {
            LoadMultipleObjects(new uint[] { msg.Player, msg.HackableObject });
            int[] connectionToRemove = JsonConvert.DeserializeObject <int[]>(msg.JsonData);

            var playerScript = NetworkObjects[0].GetComponent <PlayerScript>();
            var hackObject   = NetworkObjects[1];
            HackingProcessBase hackingProcess = hackObject.GetComponent <HackingProcessBase>();

            if (hackingProcess.ServerPlayerCanRemoveConnection(playerScript, connectionToRemove))
            {
                hackingProcess.ServerPlayerRemoveConnection(playerScript, connectionToRemove);
                HackingNodeConnectionList.Send(NetworkObjects[0], hackObject, hackingProcess.GetNodeConnectionList());
            }
        }
    public override void Process()
    {
        LoadMultipleObjects(new uint[] { Player, HackableObject, HackingDevice });

        var                playerScript   = NetworkObjects[0].GetComponent <PlayerScript>();
        var                hackObject     = NetworkObjects[1];
        HackingDevice      hackDevice     = NetworkObjects[2].GetComponent <HackingDevice>();
        HackingProcessBase hackingProcess = hackObject.GetComponent <HackingProcessBase>();

        if (hackingProcess.ServerPlayerCanAddDevice(playerScript, hackDevice))
        {
            hackingProcess.AddHackingDevice(hackDevice);
            hackingProcess.ServerStoreHackingDevice(hackDevice);
            HackingNodeConnectionList.Send(NetworkObjects[0], hackObject, hackingProcess.GetNodeConnectionList());
        }
    }
Exemple #9
0
    public override void Process()
    {
        LoadMultipleObjects(new uint[] { Player, HackableObject });
        int[] connectionToAdd = JsonConvert.DeserializeObject <int[]>(JsonData);

        var playerScript = NetworkObjects[0].GetComponent <PlayerScript>();
        var hackObject   = NetworkObjects[1];
        HackingProcessBase hackingProcess = hackObject.GetComponent <HackingProcessBase>();

        if (hackingProcess.ServerPlayerCanAddConnection(playerScript, connectionToAdd))
        {
            SoundManager.PlayNetworkedAtPos(SingletonSOSounds.Instance.WireMend, playerScript.WorldPos);
            hackingProcess.AddNodeConnection(connectionToAdd);
            HackingNodeConnectionList.Send(NetworkObjects[0], hackObject, hackingProcess.GetNodeConnectionList());
        }
    }
Exemple #10
0
        public override void Process(NetMessage msg)
        {
            LoadMultipleObjects(new uint[] { msg.Player, msg.HackableObject });

            var playerScript = NetworkObjects[0].GetComponent <PlayerScript>();
            var hackObject   = NetworkObjects[1];

            if (playerScript.IsGameObjectReachable(hackObject, true, context: hackObject))
            {
                HackingProcessBase hackProcess    = hackObject.GetComponent <HackingProcessBase>();
                List <int[]>       connectionList = hackProcess.GetNodeConnectionList();
                if (connectionList != null)
                {
                    SendDataToClient(NetworkObjects[0], hackObject, connectionList);
                    return;
                }
            }
        }