コード例 #1
0
 public override void SetAIAction(ADrunkAI ai, float aiHumor, float aiAlcool)
 {
     if (!ai.HaveBottle())
     {
         base.SetAIAction(ai, aiHumor, aiAlcool);
     }
 }
コード例 #2
0
 protected override void Action(ADrunkAI otherai)
 {
     print("this Ai gonna take a kick");
     otherai.ActionDone();
     otherai.AddAction(ActionEnum.Action.Stun, null);
     base.Action(thisAI);
 }
コード例 #3
0
 private void DoDance(GameObject col, ADrunkAI ai)
 {
     if (Mathf.Abs(AI.gameObject.transform.position.x - dancePosition.x) < 0.1 && Mathf.Abs(AI.gameObject.transform.position.z - dancePosition.z) < 0.1)
     {
         AI.StopWalking();
     }
 }
コード例 #4
0
ファイル: AEvent.cs プロジェクト: FernandVEYRIER/3DGA
 virtual protected void Action(ADrunkAI ai)
 {
     ai.ActionDone();
     for (int i = 0; i < actions.Count; i++)
     {
         ai.AddAction(actions[i], goOfAction[i]);
     }
 }
コード例 #5
0
 private void PlayDart(GameObject col, ADrunkAI ai)
 {
     if (Mathf.Abs(AI.gameObject.transform.position.x - dartPosition.x) < 0.1 && Mathf.Abs(AI.gameObject.transform.position.z - dartPosition.z) < 0.1)
     {
         AI.StopWalking();
         AI.AddAction(ActionEnum.Action.Dart, null);
         AI.AddAction(ActionEnum.Action.ActionDone, null);
     }
 }
コード例 #6
0
 private void hide(GameObject col, ADrunkAI ai)
 {
     if (col == hiddingPlace)
     {
         AI.SetTriggerCB(null);
         AI.SetTriggerStayCB(null);
         AI.StopWalking();
         AI.AddAction(ActionEnum.Action.Hide, null);
     }
 }
コード例 #7
0
 private void getCocktail(GameObject col, ADrunkAI ai)
 {
     print("colision with the cocktail");
     if (col == gameObject)
     {
         print("ia getting cocktail, disable the sphere trigger");
         sphere.radius = 0;
         ai.StopWalking();
     }
 }
コード例 #8
0
    private void CocktailDisappear(GameObject col, ADrunkAI ai)
    {
        print("trigger cocktail disappear");

        if (gameObject != null && col == gameObject)
        {
            print("cocktail desapear, ai change his mind");
            ai.ActionDone();
        }
    }
コード例 #9
0
 private void Exit(GameObject col, ADrunkAI ai)
 {
     if (col == exit)
     {
         AI.SetTriggerCB(null);
         AI.SetTriggerStayCB(null);
         AI.StopWalking();
         AI.AddAction(ActionEnum.Action.Leave, null);
         AI.AddAction(ActionEnum.Action.ActionDone, null);
     }
 }
コード例 #10
0
ファイル: ThrowBottles.cs プロジェクト: FernandVEYRIER/3DGA
 private void getBottleInPile(GameObject col, ADrunkAI ai)
 {
     if (bottle == col)
     {
         Debug.Log("getBottlePile callback");
         AI.SetCollisionCB(null);
         AI.SetTriggerCB(null);
         AI.StopWalking();
         AI.AddAction(ActionEnum.Action.GetBottle, col);
         ThrowThisBottle();
     }
 }
コード例 #11
0
 private void drink(GameObject col, ADrunkAI ai)
 {
     if (col == bottle)
     {
         AI.SetCollisionCB(null);
         AI.SetTriggerCB(null);
         AI.StopWalking();
         AI.AddAction(ActionEnum.Action.GetBottle, col);
         AI.AddAction(ActionEnum.Action.Drink, null);
         AI.AddAction(ActionEnum.Action.ActionDone, null);
     }
 }
コード例 #12
0
 public override void SetAIAction(ADrunkAI ai, float aiHumor, float aiAlcool)
 {
     if (Enable && ai.State == ADrunkAI.IAState.INTERACTEABLE && thisAI.State == ADrunkAI.IAState.INTERACTEABLE)
     {
         if (((float)(UnityEngine.Random.Range(0, 101)) / 100.0f) < ((humor.Evaluate(aiHumor) + alcool.Evaluate(aiAlcool)) / 2))
         {
             print("event proc, modification of the actions !!");
             ai.GetDrunk(amountOfAlcool);
             ai.GetHappy(amountOfJoyness);
             Action(ai);
         }
     }
 }
コード例 #13
0
 public virtual void Initialize(ADrunkAI ai)
 {
     AI             = ai;
     elementManager = GameObject.Find("ElementManager").GetComponent <ElementManager>();
 }
コード例 #14
0
 protected override void Action(ADrunkAI ai)
 {
     print("sliping on the floor !!!");
     base.Action(ai);
 }
コード例 #15
0
 public void Initialize(ADrunkAI ai)
 {
     AI       = ai;
     animator = AI.gameObject.GetComponent <Animator>();
 }
コード例 #16
0
ファイル: ThrowBottles.cs プロジェクト: FernandVEYRIER/3DGA
 public override void Initialize(ADrunkAI ai)
 {
     base.Initialize(ai);
     action = ActionEnum.Action.ThrowBottle;
 }
コード例 #17
0
 protected override void Action(ADrunkAI ai)
 {
     base.Action(ai);
     ai.SetCollisionCB(getCocktail);
     ai.SetTriggerExitCB(CocktailDisappear);
 }
コード例 #18
0
ファイル: ExplosionEvent.cs プロジェクト: FernandVEYRIER/3DGA
 protected override void Action(ADrunkAI ai)
 {
     print("bottle strick the IA !");
     base.Action(ai);
     ai.DrinkTypeEffect(drinkName);
 }
コード例 #19
0
 public override void Initialize(ADrunkAI ai)
 {
     base.Initialize(ai);
     action = ActionEnum.Action.Dance;
 }
コード例 #20
0
 protected override void Action(ADrunkAI ai)
 {
     base.Action(ai);
 }