public void BeCalled(Shopaholic callingShopaholic) { _navigator.BeCalled(callingShopaholic); _behaviorHandler.Run(); return; }
public override NodeState ParticularTick(Tick tick) { if (_shopaholic.FollowingCount >= 3) { _shopaholic.RegenerateHealth(); return(NodeState.SUCCESS); } if (_shopaholic.GetRemainingDistance() < 1.0f) { _shopaholic.MoveRandomly(); } Shopaholic visble = _shopaholic.NewVisible; if (visble != null) { if (visble.GetFollowedShopaholic() == null || visble.GetFollowedShopaholic().IsDead()) { visble.BeCalled(_shopaholic); } } return(NodeState.RUNNING); }
public void FollowPlayer() { _meshAgent.SetDestination(_player.GetMovingTransform().position); _shopaholicToFollow = null; return; }
public void Tick(Shopaholic shopaholic) { if (_board != null) { _tree.Tick(_board, shopaholic); } return; }
public override void ParticualEnter(Tick tick) { _shopaholic = tick.Target as Shopaholic; if (_shopaholic == null) { throw new Exception("Is not shopaholic"); } return; }
public override NodeState ParticularTick(Tick tick) { Shopaholic visble = _shopaholic.NewVisible; if (visble != null) { return(NodeState.SUCCESS); } return(NodeState.FAILURE); }
private void CreateStartShopaholics(int count) { for (int i = 0; i < count; i++) { Shopaholic shopaholic = _pool.Spawn(); shopaholic.Transform.position = Utils.GetRandomPositionOnMap(); _shopaholics.Add(shopaholic); } return; }
public override NodeState ParticularTick(Tick tick) { Shopaholic visble = _shopaholic.NewVisible; if (visble != null) { if (visble.GetFollowedShopaholic() == null || visble.GetFollowedShopaholic().IsDead()) { visble.BeCalled(_shopaholic); return(NodeState.SUCCESS); } } return(NodeState.FAILURE); }
public override NodeState ParticularTick(Tick tick) { Shopaholic followed = _shopaholic.GetFollowedShopaholic(); if (followed != null) { _shopaholic.RunTowards(followed.Transform); if (_shopaholic.GetRemainingDistance() <= 0.7f) { return(NodeState.FAILURE); } return(NodeState.SUCCESS); } return(NodeState.ERROR); }
public Shopaholic GetVisibleForShopaholic(Shopaholic shopaholic) { for (int i = 0; i < _shopaholics.Count; i++) { if (_shopaholics[i] == shopaholic) { continue; } if (Mathf.Abs((_shopaholics[i].Transform.position - shopaholic.Transform.position).magnitude) < 15.5f && _shopaholics[i].GetFollowedShopaholic() != shopaholic) { return(_shopaholics[i]); } } return(null); }
public int GetFollowing(Shopaholic shopaholic) { int count = 0; for (int i = 0; i < _shopaholics.Count; i++) { if (_shopaholics[i] == shopaholic) { continue; } if (Mathf.Abs((_shopaholics[i].Transform.position - shopaholic.Transform.position).magnitude) < 15.5f && !_shopaholics[i].GetFollowedShopaholic() != shopaholic) { count++; } } return(count); }
public void BeCalled(Shopaholic calling) { _shopaholicToFollow = calling; return; }