Esempio n. 1
0
 private void WO_MOB_OnDespawn()
 {
     if ((_data.Flags & 1) == 1)
     {
         _respawn = new AutoRespawn(this, _data.Time);
     }
 }
Esempio n. 2
0
 private void WO_Player_OnDespawn()
 {
     _respawn?.Destroy();
     _respawn = new AutoRespawn(this, respTime);
     _manager.SetPosition(this, _player.User.Spawn);
     _player.Announce(Constants.DeadMsg, 8f);
 }
Esempio n. 3
0
        private IEnumerator AutoRespawnUnit(AutoRespawn respawn)
        {
            yield return(new WaitForSeconds(respawn.autoRespawnDuration));

            respawn.gameObject.SetActive(true);
            respawn.Revive();
        }
Esempio n. 4
0
 private void WO_Pickup_OnDestroy()
 {
     _respawn?.Destroy();
     _view.ClearSubscriptions();
     _server.Room.Destroy(_view);
     _view    = null;
     _respawn = null;
 }
Esempio n. 5
0
 private void WO_Pickup_OnSpawn()
 {
     if (_resource == null)
     {
         return;
     }
     _respawn?.Destroy(); _respawn = null;
     _view = _server.Room.Instantiate(_resource, _data.Position, _data.Rotation);
     _view.SubscribeToRpc(50, 52, RPC_50_52);
     _view.GettingPosition += View_GettingPosition;
     _view.GettingRotation += View_GettingRotation;
 }
Esempio n. 6
0
    protected virtual void Initialization()
    {
        Character = GetComponent <GameUnit>();
        if (Model != null)
        {
            Model.SetActive(true);
        }

        Renderer = GetComponent <Renderer>();
        if (Character != null)
        {
            if (Character.CharacterBody != null)
            {
                if (Character.CharacterBody.GetComponent <Renderer>() != null)
                {
                    Renderer = Character.CharacterBody.GetComponent <Renderer>();
                }
            }
        }

        if (Character != null)
        {
            if (Character.CharacterAnimator != null)
            {
                Animator = Character.CharacterAnimator;
            }
            else
            {
                Animator = GetComponent <Animator>();
            }
        }
        else
        {
            Animator = GetComponent <Animator>();
        }

        if (Animator != null)
        {
            Animator.logWarnings = false;
        }

        HealthBar   = GetComponent <HealthBar>();
        _collider2D = GetComponent <Collider2D>();
        AutoRespawn = GetComponent <AutoRespawn>();
        Armor       = GetComponent <Armor>();

        Initialized = true;
        CurrentHP   = InitialHealth;
        DamageEnabled();
        UpdateHealthBar(false);
    }
Esempio n. 7
0
        private void RPC_50_52(NetMessage arg1, NetMessageInfo arg2)
        {
            MapPlayer player = _server[arg2.Sender.Id];

            if (_view != null && Vector3.DistanceSquared(player.Object.Position, _data.Position) <= Constants.MaxInteractionDistanceSquared)
            {
                if ((_data.Flags & 1) == 1)
                {
                    Despawn();
                    _respawn = new AutoRespawn(this, _data.Time);
                }
                else
                {
                    Destroy();
                }
                player.Items.AddItems(_data.ObjectID, _data.Data01);
            }
        }
Esempio n. 8
0
 private void WO_Player_OnDestroy()
 {
     _respawn?.Destroy();
     _player  = null;
     _respawn = null;
 }
Esempio n. 9
0
 private void WO_MOB_OnDestroy()
 {
     _respawn?.Destroy();
     _threat  = null;
     _respawn = null;
 }
Esempio n. 10
0
 public void AddRespawnable(AutoRespawn respawn)
 {
     queueTorRespawn.Enqueue(respawn);
 }