public CPlayerInstance(FightManager fightManager, Region region, PlayerKnownList objectKnownList, StatHolder stats, IItemHolder items, EffectHolder effects, IEnumerable <ICharacterData> characterDatas) : base(region, objectKnownList, stats, items, effects, characterDatas) { Destination = new Position(); FightManager = fightManager; }
public override void _Ready() { SetupStructure(); testholder = new StatHolder(); testholder.AddStat(StatLoader.GetStatType("Health")); testholder.AddStat(StatLoader.GetStatType("Energy")); Test(); }
private void SubscribeJumpPowerChange() { if (!isSubscribedForJumpPowerChange && StatHolder.TryGetStat(StatType.JumpPower, out jumpStat)) { ProcessJumpChange(jumpStat.CurrentValue); jumpStat.CurrentChanged += ProcessJumpChange; isSubscribedForJumpPowerChange = true; } }
private void OnTriggerEnter2D(Collider2D collision) { if (tags.Contains(collision.tag)) { StatHolder enemyStatholder = collision.GetComponent <StatHolder>(); ApplyDamage(enemyStatholder); } }
public virtual void ProcessFixedUpdate(float fixedDeltaTime) { if (GameTransform.hasChanged) { OnPositionChange?.Invoke(GameTransform.position); GameTransform.hasChanged = false; } effectController.ProcessFixedUpdate(fixedDeltaTime); StatHolder.ProcessFixedUpdate(fixedDeltaTime); }
private void OnTriggerEnter2D(Collider2D collision) { if (tags.Contains(collision.tag)) { StatHolder statHolder = collision.GetComponent <StatHolder>(); statHolder.AddModifier(modifier); Destroy(gameObject); } }
private static void SaveStat() { GameObject gObj = new GameObject("Holder"); StatHolder holder = gObj.AddComponent(typeof(StatHolder)).GetComponent <StatHolder>(); holder.oldStat = CharacterManager.Get_instance().characterStat.clone; UnityEngine.Object.DontDestroyOnLoad(holder); //스탯 저장 }
private void UnsubscribeCurrentSpeedChange() { if (isSubscribedForSpeedChange && StatHolder.TryGetStat(StatType.Speed, out var speed)) { speed.MinMaxChanged -= ProcessMaxSpeedChange; speed.CurrentChanged -= ProcessSpeedChange; } isSubscribedForSpeedChange = false; }
public virtual void Shutdown() { DisposeTransform(); GameTransform = null; UnsubscribeCurrentSpeedChange(); UnsubscribeJumpPowerChange(); PlayerLoopSubscriptionController.Shutdown(); OnPositionChange = null; effectController?.RemoveAllInstantly(); StatHolder.Clear(); }
private void InitializeStats(StatsDictionary stats) { foreach (var statSet in stats) { var statType = statSet.Key; var statDef = statSet.Value; Stat stat; stat = statDef.Regenerative ? new RegenerativeStat(statDef.Amount, statDef.RegenerativeForce) : new Stat(statDef.Amount); StatHolder.AddStat(statType, stat); } }
private void OnTriggerEnter2D(Collider2D collision) { if (tags.Contains(collision.tag)) { StatHolder statHolder = collision.GetComponent <StatHolder>(); System.Random random = new System.Random(); Property p = statHolder.FindPropertyByName(properties[random.Next(0, properties.Count)].GetType().Name); p.IncreaseRuntimeBaseValue(IncreaseAmount); Destroy(gameObject); } }
private void SubscribeForSpeedChange() { if (!isSubscribedForSpeedChange && StatHolder.TryGetStat(StatType.Speed, out var speed)) { MoveSpeed = speed.CurrentValue; MaxMoveSpeed = speed.MaxValue; MaxMoveSpeedSqr = MaxMoveSpeed * MaxMoveSpeed; speed.MinMaxChanged += ProcessMaxSpeedChange; speed.CurrentChanged += ProcessSpeedChange; isSubscribedForSpeedChange = true; } }
void Awake() { if (instance == null) { instance = this; } else { Destroy(gameObject); return; } DontDestroyOnLoad(gameObject); }
public void OnTriggerStay2D(Collider2D collision) { if (collision.tag == "Player") { if (canDamagePlayer) { endTime = Time.time + timeBetweenDamageTicks; canDamagePlayer = false; StatHolder enemyStatholder = collision.GetComponent <StatHolder>(); ApplyDamage(enemyStatholder); } } }
private void Start() { statholder = Body.GetComponent <StatHolder>(); bodyAnimator = Body.GetComponent <Animator>(); handsAnimator = Hands.GetComponent <Animator>(); Attack attack = statholder.FindPropertyByName("Attack") as Attack; bosshealth = statholder.FindPropertyByName("Health") as Health; GameObject Player = GameObject.FindGameObjectWithTag("Player"); Defence defence = Player.GetComponent <StatHolder>().FindPropertyByName("Defence") as Defence; attack.runtimeBaseValue = defence.runtimeBaseValue + 1; }
private void ApplyDamage(StatHolder enemyStatHolder) { Health health = enemyStatHolder.FindPropertyByName("Health") as Health; enemyStatHolder.DisplayDamage(enemyStatHolder.gameObject.GetComponent <SpriteRenderer>()); if (health != null) { if (health.Hurt != null) { audioSource.clip = health.Hurt; audioSource.Play(); } health.ApplyDamage((Attack)statHolder.FindPropertyByName("Attack")); } }
private void OnTriggerEnter2D(Collider2D collision) { if (tags.Contains(collision.tag)) { StatHolder statHolder = collision.GetComponent <StatHolder>(); statHolder.DisplayDamage(collision.GetComponent <SpriteRenderer>()); Health health = statHolder.FindPropertyByName("Health") as Health; if (health != null) { if (health.Hurt != null) { audioSource.clip = health.Hurt; audioSource.Play(); } health.ApplyDamage(attack); } } }
private void BtnAddQuery_Click(object sender, RoutedEventArgs e) { StatHolder stat = new StatHolder(); //error do opisania, wywala sie jak nic nie ma try { stat.sql = m_SelectedQuery.sql; stat.time = m_SelectedQuery.time; selectedStat.Add(stat); } catch (Exception ex) { Console.WriteLine("Queriy log is empty!"); } _SelectedQueryCollection.Add(m_SelectedQuery); this.DataContext = this; }
/// <summary> /// /// </summary> /// <param name="game"></param> /// <param name="team"></param> static void ReportGameStats(Game game, Team team) { if (game.GameAnnouncer.ReportFrequency != AnnounceReportFrequency.Silent) { Player[] players = team.ToArray(); Console.WriteLine("---------------------------------------"); for (int j = 0; j < (int)StatTypes.Unknown - 1; ++j) { Console.WriteLine("{0} Stats:", ((StatTypes)j).ToString()); Console.WriteLine("-----------------------------------------------"); for (int k = 0; k < players.Length; ++k) { StatHolder stats = game.GameStats[team, k]; Player player = players[k]; Console.WriteLine("{0} {1}", player.Name, stats[(StatTypes)j].ToString()); } } } }
public Ship(IMove moveImplementation, IRotation rotationImplementation, IShoot shootImplementation, Transform transform, ITransformRegistry transformRegistry, Stat health, ShipMarkUp shipGameObjectMarkUp) { _moveImplementation = moveImplementation; _rotationImplementation = rotationImplementation; shooter = shootImplementation; GameTransform = transform; TransformRegistryBind = transformRegistry; TransformRegistryBind.RegisterTransform(this, GameTransform); StatHolder = new StatHolder(); healthStat = health; healthStat.CurrentChanged += ProcessHealthChange; StatHolder.AddStat(StatType.Health, healthStat); colliderListener = shipGameObjectMarkUp.ColliderListener; colliderListener.EnterCollider += ProcessCollisions; }
public CBotInstance(byte level, Region region, CharacterKnownList objectKnownList, StatHolder stats, IItemHolder items, EffectHolder effects, IEnumerable <ICharacterData> charData) : base(region, objectKnownList, stats, items, effects, charData) { Stats.SetStat <Level>(level); ObjectId = Math.Abs(Guid.NewGuid().GetHashCode()); Name = botNames[new Random().Next(0, botNames.Count)]; }