Inheritance: MonoBehaviour
    public void AIInit(SpawnAnimation spawnAnimation, List <AIAction> patrolList, List <AIAction> attackList)
    {
        mosquitoBlackboard.ResetValues();
        mosquitoBlackboard.spawnAnimation = spawnAnimation;

        //Init states with lists
        mosquitoBlackboard.patrolingState.Init(patrolList);
        mosquitoBlackboard.attackingPlayerState.Init(attackList);
    }
Exemple #2
0
    public void AIInit(SpawnAnimation spawnAnimation, List <AIAction> entryList, List <AIAction> attackList, List <AIAction> infectList)
    {
        spiderBlackboard.ResetValues();
        spiderBlackboard.spawnAnimation = spawnAnimation;

        //Init states with lists
        spiderBlackboard.entryState.Init(entryList);
        spiderBlackboard.attackingPlayerState.Init(attackList);
        spiderBlackboard.infectingDeviceState.Init(infectList);
    }
Exemple #3
0
    public void AIInitGroup(SpawnAnimation spawnAnimation, EnemyGroupInfo groupInfo, List <AIAction> leaderList, List <AIAction> followerList, List <AIAction> attackList, List <AIAction> infectList, bool isLeader = false)
    {
        spiderBlackboard.ResetValues();
        spiderBlackboard.spawnAnimation = spawnAnimation;

        spiderBlackboard.groupInfo = groupInfo;
        if (isLeader)
        {
            groupInfo.leader = this;
        }

        //Init states with lists
        spiderBlackboard.leadingGroupState.Init(leaderList);
        spiderBlackboard.followingGroupState.Init(followerList);
        spiderBlackboard.attackingPlayerState.Init(attackList);
        spiderBlackboard.infectingDeviceState.Init(infectList);
    }
Exemple #4
0
    /// <summary>
    /// spawing one by one
    /// </summary>
    /// <param name="spawnObjs">
    ///  set of object spawn in same procession
    /// </param>

    IEnumerator Spawning(Queue <Transform> spawnObjs)
    {
        SpawnAnimation beforeObj = null;

        while (spawnObjs.Count > 0)
        {
            //create SpawnAnimation
            var newtrain    = SpawnAnimationPool.SpawnFromPool("SpawnAnim", startpoint.position, transform.rotation);
            var newSpawnAim = newtrain.GetComponent <SpawnAnimation>();
            //

            newSpawnAim.AssignRider(spawnObjs.Dequeue()); //add spawned object to SpawnAnimation for doing spawn animation

            if (beforeObj != null)                        //check if is not the head of train,
            {
                beforeObj.crews.Add(newSpawnAim);         //Append to the last of the row
            }
            beforeObj          = newSpawnAim;             //set object(passenger) to last of row
            newSpawnAim.landAt = landStation;             //set parent of object(passenger)  after finised spawnanimations
            newSpawnAim.StartTrain();                     //start animating
            yield return(new WaitForSeconds(repeatTime));
        }
    }
    private void InitOnStart()
    {
        spawnAnimation = SpawnAnimation.Start;

        circleCollider = this.GetComponent <CircleCollider2D>();
        spriteRenderer = this.GetComponent <SpriteRenderer>();
        missileModule  = this.GetComponent <MissileModuleLaserNo5Ver2>();

        player = PublicValueStorage.Instance.GetPlayerComponent();
        circleCollider.radius = spriteRenderer.bounds.extents.x * 0.7f;

        // Spawn Values
        spawnStart = PublicValueStorage.Instance.GetBossSpawnPosition() * 3.5f;
        spawnEnd   = PublicValueStorage.Instance.GetBossSpawnPosition();

        //Debug.Log("start : " + spawnStart);
        //Debug.Log("end : " + spawnEnd);

        if (spawnSpeed <= spawnSpeedMin)
        {
            spawnSpeed = spawnSpeedMin;
        }
    }
 private void ChangeState(SpawnAnimation spawnState)
 {
     spawnAnimation = spawnState;
 }