Пример #1
0
        // Character delegate callback.
        private void CharacterDestinationChanged(
            BasePositionedCharacter character, Vector3 destination)
        {
            if (character != registeredCharacter)
            {
                Debug.Log("Received new destination from unknown delegate");
                return;
            }

            characterDestination = destination;

            if (moveToDestination == false)
            {
                moveToDestination = IsPositionOutsideBounds(characterDestination);
            }
        }
Пример #2
0
        private void HandleCharacterRegistration()
        {
            // Check if character has changed, and register for callbacks.
            if (chaseCharacter != registeredCharacter)
            {
                if (registeredCharacter)
                {
                    registeredCharacter.positionDelegate -= CharacterDestinationChanged;
                }

                if (chaseCharacter != null)
                {
                    registeredCharacter = chaseCharacter;
                    registeredCharacter.positionDelegate += CharacterDestinationChanged;
                }
            }
        }