private void WO_MOB_OnDespawn() { if ((_data.Flags & 1) == 1) { _respawn = new AutoRespawn(this, _data.Time); } }
private void WO_Player_OnDespawn() { _respawn?.Destroy(); _respawn = new AutoRespawn(this, respTime); _manager.SetPosition(this, _player.User.Spawn); _player.Announce(Constants.DeadMsg, 8f); }
private IEnumerator AutoRespawnUnit(AutoRespawn respawn) { yield return(new WaitForSeconds(respawn.autoRespawnDuration)); respawn.gameObject.SetActive(true); respawn.Revive(); }
private void WO_Pickup_OnDestroy() { _respawn?.Destroy(); _view.ClearSubscriptions(); _server.Room.Destroy(_view); _view = null; _respawn = null; }
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; }
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); }
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); } }
private void WO_Player_OnDestroy() { _respawn?.Destroy(); _player = null; _respawn = null; }
private void WO_MOB_OnDestroy() { _respawn?.Destroy(); _threat = null; _respawn = null; }
public void AddRespawnable(AutoRespawn respawn) { queueTorRespawn.Enqueue(respawn); }