Пример #1
0
/// private メソッド
///---------------------------------------------------------------------------
        /// フレーム:移動
        private bool frameMove(ActorChHobit actorCh)
        {
            actorCh.AiMoveCount--;
            if (actorCh.AiMoveCount < 0)
            {
                actorCh.MovedFlag = true;
                if (actorCh.texId < (int)Data.Tex2dResId.NormalCharMax)
                {
                    int ToNumber = ctrlResMgr.CtrlTo.GetEntryNum() + ctrlResMgr.CtrlWall.GetEntryNum();
                    if (ToNumber == 0)
                    {
                        actorCh.AiMoveRot = (int)StaticDataList.getRandom(0, 360);
                    }
                    else
                    {
                        int towerNumber = (int)StaticDataList.getRandom(0, ToNumber);
                        glowTowerWall(actorCh, towerNumber);
                        moveToTowerWall(actorCh, towerNumber);
                    }
                }
                if (actorCh.texId == (int)Data.Tex2dResId.Zonbi1)
                {
                    actorCh.AiMoveRot += Common.VectorUtil.GetRotY(actorCh.AiMoveRot, actorCh.BasePos, ctrlResMgr.EnemyMoPos) + StaticDataList.getRandom(-10, 10);
                }

                actorCh.AiMoveCount = (int)(Data.SetupValue.CharMoveChangeTime + StaticDataList.getRandom(-(int)(Data.SetupValue.CharMoveChangeRandTime), (int)Data.SetupValue.CharMoveChangeRandTime));

                actorSpeek(actorCh);
            }
            moveCh(actorCh);
            return(true);
        }
Пример #2
0
        private void actorSpeek(ActorChHobit actorCh)
        {
            actorCh.AiMoveCount = (int)(Data.SetupValue.CharMoveChangeTime + StaticDataList.getRandom(-(int)(Data.SetupValue.CharMoveChangeRandTime), (int)Data.SetupValue.CharMoveChangeRandTime));
            if (actorCh.texId != (int)Data.Tex2dResId.Zonbi1 && actorCh.texId != (int)Data.Tex2dResId.Necromancer1)
            {
                if (StaticDataList.getRandom(0, 100) < (int)Data.SetupValue.BaloonAppearRand && actorCh.deadFlagSp == true && speakCount < 6)
                {
                    actorCh.setAppearCountSp((int)Data.SetupValue.AppearAndLeaveTime);
                    speakCount++;
                    int charVoNumber = StaticDataList.getRandom(3);
                    switch (charVoNumber)
                    {
                    case 0: AppSound.GetInstance().PlaySeCamDis(AppSound.SeId.CharVo1, actorCh.GetBodyPos()); break;

                    case 1: AppSound.GetInstance().PlaySeCamDis(AppSound.SeId.CharVo2, actorCh.GetBodyPos()); break;

                    case 2: AppSound.GetInstance().PlaySeCamDis(AppSound.SeId.CharVo3, actorCh.GetBodyPos()); break;
                    }
                }
            }
            else if (actorCh.texId == (int)Data.Tex2dResId.Zonbi1)
            {
                if (StaticDataList.getRandom(0, 100) < (int)Data.SetupValue.GionAppearRand && actorCh.deadFlagSp == true && speakCount < 6)
                {
                    actorCh.setAppearCountSp((int)Data.SetupValue.GionAppearSpeed);
                    speakCount++;
                    AppSound.GetInstance().PlaySeCamDis(AppSound.SeId.ZonbiVo3, actorCh.GetBodyPos());
                }
            }
        }
Пример #3
0
 private void battleEffect(ActorChHobit actorCh)
 {
     if (StaticDataList.getRandom(0, (int)Data.SetupValue.BattleEffectRand + 1) == 0)
     {
         AppSound.GetInstance().PlaySeCamDis(AppSound.SeId.PlDamage, actorCh.GetBodyPos());
         //ctrlResMgr.CtrlPl.Addeffect(new Vector3( actorCh.BasePos.X + StaticDataList.getRandom(-15,15)/5.0f ,actorCh.BasePos.Y + 0.2f ,actorCh.BasePos.Z+ StaticDataList.getRandom(-15,15)/5.0f));
         ctrlResMgr.AddEffectFromEnemy = true;
         ctrlResMgr.AddEnemyEffectPos  = actorCh.BasePos;
     }
 }
Пример #4
0
        /// 敵の登録
        public void EntryAddEnemy(int TexId, Vector3 pos)
        {
            ActorChHobit actorCh = new ActorChHobit(TexId);

            actorCh.Init();
            actorCh.Start();

            actorChList.Add(actorCh);

            SetPlace((actorChList.Count - 1), pos);
        }
Пример #5
0
 private void moveCh(ActorChHobit actorCh)
 {
     if (actorCh.FrameFlag == true)
     {
         actorCh.SetStateMove(new Vector3(actorCh.BaseMtx.M31, actorCh.BaseMtx.M32, actorCh.BaseMtx.M33),
                              moveSpeed, actorCh.AiMoveRot, false);
     }
     else
     {
         actorCh.SetStateMove(new Vector3(actorCh.BaseMtx.M31, actorCh.BaseMtx.M32, actorCh.BaseMtx.M33),
                              0, actorCh.AiMoveRot, false);
     }
 }
Пример #6
0
        private void randomMoveToTowerWall(ActorChHobit actorCh)
        {
            int ToNumber = ctrlResMgr.CtrlTo.GetEntryNum() + ctrlResMgr.CtrlWall.GetEntryNum();

            if (ToNumber == 0)
            {
                actorCh.AiMoveRot = (int)StaticDataList.getRandom(0, 360);
            }
            else
            {
                int towerNumber = (int)StaticDataList.getRandom(0, ToNumber);
                moveToTowerWall(actorCh, towerNumber);
            }
        }
Пример #7
0
        private void moveToTowerWall(ActorChHobit actorCh, int towerNumber)
        {
            float tempRot;

            if (towerNumber < ctrlResMgr.CtrlTo.GetEntryNum())
            {
                tempRot = Common.VectorUtil.GetRotY(actorCh.AiMoveRot, actorCh.BasePos, ctrlResMgr.CtrlTo.GetPos(towerNumber));
            }
            else
            {
                tempRot = Common.VectorUtil.GetRotY(actorCh.AiMoveRot, actorCh.BasePos, ctrlResMgr.CtrlWall.GetPos(towerNumber - ctrlResMgr.CtrlTo.GetEntryNum()));
            }
            actorCh.AiMoveRot += tempRot + StaticDataList.getRandom(-3, 3);
        }
Пример #8
0
        private bool frameMurder(ActorChHobit actorCh)
        {
            actorCh.AiMoveCount--;
            if (actorCh.AiMoveCount < 0)
            {
                actorCh.MovedFlag = true;

                if (actorCh.texId == (int)Data.Tex2dResId.Noumin1)
                {
                    actorCh.AiMoveRot += Common.VectorUtil.GetRotY(actorCh.AiMoveRot, actorCh.BasePos, meanChPos(true, true, false, true)) + StaticDataList.getRandom(-20, 20);
                    if (StaticDataList.random100() < (int)Data.SetupValue.BattleNouminDeadRand)
                    {
                        actorCh.changeId((int)Data.Tex2dResId.Zonbi1);
                    }
                }
                if (actorCh.texId == (int)Data.Tex2dResId.Senshi1)
                {
                    actorCh.AiMoveRot += Common.VectorUtil.GetRotY(actorCh.AiMoveRot, actorCh.BasePos, meanChPos(true, true, false, true)) + StaticDataList.getRandom(-20, 20);
                    if (StaticDataList.random100() < (int)Data.SetupValue.BattleSenshiDeadRand)
                    {
                        actorCh.changeId((int)Data.Tex2dResId.Zonbi1);
                    }
                }
                if (actorCh.texId == (int)Data.Tex2dResId.Souryo1)
                {
                    randomMoveToTowerWall(actorCh);
                    if (StaticDataList.random100() < (int)Data.SetupValue.BattleSouryoDeadRand * 2 * rateCh(false, false, false, true))
                    {
                        actorCh.changeId((int)Data.Tex2dResId.Zonbi1);
                    }
                }
                if (actorCh.texId == (int)Data.Tex2dResId.Zonbi1)
                {
                    actorCh.AiMoveRot += Common.VectorUtil.GetRotY(actorCh.AiMoveRot, actorCh.BasePos, meanChPos(true, true, false, true)) + StaticDataList.getRandom(-20, 20);
                    if (StaticDataList.random100() < (int)Data.SetupValue.BattleZonbi2DeadRand * 2 * rateCh(false, false, true, false))
                    {
                        actorCh.setdeadFlag(true);
                    }
                }

                battleEffect(actorCh);
                actorSpeek(actorCh);
            }
            moveCh(actorCh);
            return(true);
        }
Пример #9
0
        private bool frameEat(ActorChHobit actorCh)
        {
            GameCtrlManager ctrlResMgr = GameCtrlManager.GetInstance();

            if (actorCh.GetStateId() != ActorChBase.StateId.Eat)
            {
                actorCh.AiMoveCount--;
                if (actorCh.AiMoveCount < 0)
                {
                    actorCh.AiMoveRot   = (int)StaticDataList.getRandom(360);
                    actorCh.AiMoveCount = (int)(Data.SetupValue.CharMoveChangeTime + StaticDataList.getRandom(-(int)(Data.SetupValue.CharMoveChangeRandTime), (int)Data.SetupValue.CharMoveChangeRandTime));
                }
                actorCh.SetStateMove(new Vector3(actorCh.BaseMtx.M31, actorCh.BaseMtx.M32, actorCh.BaseMtx.M33),
                                     moveSpeed, actorCh.AiMoveRot, false);
            }
            return(true);
        }
Пример #10
0
        /// フレーム:移動
        private bool frameBattleMove(ActorChHobit actorCh)
        {
            actorCh.AiMoveCount--;
            if (actorCh.AiMoveCount < 0)
            {
                actorCh.MovedFlag = true;

                if (actorCh.texId == (int)Data.Tex2dResId.Noumin1)
                {
                    actorCh.AiMoveRot += Common.VectorUtil.GetRotY(actorCh.AiMoveRot, actorCh.BasePos, EnemyCenterPos) + StaticDataList.getRandom(-20, 20);
                }
                if (actorCh.texId == (int)Data.Tex2dResId.Senshi1)
                {
                    actorCh.AiMoveRot += Common.VectorUtil.GetRotY(actorCh.AiMoveRot, actorCh.BasePos, EnemyCenterPos) + StaticDataList.getRandom(-20, 20);
                }
                if (actorCh.texId == (int)Data.Tex2dResId.Souryo1)
                {
                    randomMoveToTowerWall(actorCh);
                }
                if (actorCh.texId == (int)Data.Tex2dResId.Zonbi1)
                {
                    actorCh.AiMoveRot += Common.VectorUtil.GetRotY(actorCh.AiMoveRot, actorCh.BasePos, meanChPos(true, true, false, false) + StaticDataList.getRandom(-20, 20));
                }
                if (actorCh.texId == (int)Data.Tex2dResId.Necromancer1)
                {
                    actorCh.AiMoveRot            += Common.VectorUtil.GetRotY(actorCh.AiMoveRot, actorCh.BasePos, EnemyPos / ZonbiList.Count) + StaticDataList.getRandom(-20, 20);
                    ctrlResMgr.AddEnemyFromNecro  = true;
                    ctrlResMgr.AddEnemyPos        = actorCh.BasePos;
                    ctrlResMgr.AddEffectFromEnemy = true;
                    ctrlResMgr.AddEnemyEffectPos  = actorCh.BasePos;
                }

                actorSpeek(actorCh);
            }
            moveCh(actorCh);

            return(true);
        }
Пример #11
0
        private void glowTowerWall(ActorChHobit actorCh, int towerNumber)
        {
            float dis;

            if (towerNumber < ctrlResMgr.CtrlTo.GetEntryNum())
            {
                dis = Common.VectorUtil.DistanceXZ(actorCh.BasePos, ctrlResMgr.CtrlTo.GetPos(towerNumber));
                if (dis < (int)Data.SetupValue.TowerGlowArea / 10.0f && ctrlResMgr.CtrlTo.GetUseActorBaseObj(towerNumber).GetTexId() != 0)
                {
                    ctrlResMgr.CtrlTo.GetUseActorBaseObj(towerNumber).glowCounter++;
//				actorCh.setdeadFlag(true);
                }
            }
            else
            {
                dis = Common.VectorUtil.DistanceXZ(actorCh.BasePos, ctrlResMgr.CtrlWall.GetPos(towerNumber - ctrlResMgr.CtrlTo.GetEntryNum()));
                if (dis < (int)Data.SetupValue.TowerGlowArea / 10.0f && ctrlResMgr.CtrlWall.GetUseActorBaseObj(towerNumber - ctrlResMgr.CtrlTo.GetEntryNum()).GetTexId() != 0)
                {
                    ctrlResMgr.CtrlWall.GetUseActorBaseObj(towerNumber - ctrlResMgr.CtrlTo.GetEntryNum()).glowCounter++;
//				actorCh.setdeadFlag(true);
                }
            }
        }
Пример #12
0
 private bool frameBreakTower(ActorChHobit actorCh)
 {
     return true;
 }
Пример #13
0
 private void battleEffect(ActorChHobit actorCh)
 {
     if(StaticDataList.getRandom(0,(int)Data.SetupValue.BattleEffectRand+1) == 0){
      AppSound.GetInstance().PlaySeCamDis( AppSound.SeId.PlDamage,actorCh.GetBodyPos() );
     //ctrlResMgr.CtrlPl.Addeffect(new Vector3( actorCh.BasePos.X + StaticDataList.getRandom(-15,15)/5.0f ,actorCh.BasePos.Y + 0.2f ,actorCh.BasePos.Z+ StaticDataList.getRandom(-15,15)/5.0f));
         ctrlResMgr.AddEffectFromEnemy = true;
         ctrlResMgr.AddEnemyEffectPos = actorCh.BasePos;
     }
 }
Пример #14
0
        private bool frameMurderMove(ActorChHobit actorCh)
        {
            actorCh.AiMoveCount--;
            if(actorCh.AiMoveCount < 0){
            if(actorCh.texId == (int)Data.Tex2dResId.Noumin1){
                actorCh.AiMoveRot += Common.VectorUtil.GetRotY( actorCh.AiMoveRot,actorCh.BasePos,EnemyCenterPos) + StaticDataList.getRandom(-20,20);
            }
            if(actorCh.texId == (int)Data.Tex2dResId.Senshi1){
                actorCh.AiMoveRot += Common.VectorUtil.GetRotY( actorCh.AiMoveRot,actorCh.BasePos,EnemyCenterPos) + StaticDataList.getRandom(-20,20);
            }
            if(actorCh.texId == (int)Data.Tex2dResId.Souryo1){
                randomMoveToTowerWall(actorCh);
            }
            if(actorCh.texId == (int)Data.Tex2dResId.Zonbi1){
                actorCh.AiMoveRot += Common.VectorUtil.GetRotY( actorCh.AiMoveRot,actorCh.BasePos,PriestCenterPos+ StaticDataList.getRandom(-20,20));
            }
            if(actorCh.texId == (int)Data.Tex2dResId.Necromancer1){
                actorCh.AiMoveRot += Common.VectorUtil.GetRotY( actorCh.AiMoveRot,actorCh.BasePos,EnemyPos/ZonbiList.Count) + StaticDataList.getRandom(-20,20);
                ctrlResMgr.AddEnemyFromNecro = true;
                ctrlResMgr.AddEnemyPos = actorCh.BasePos;
                ctrlResMgr.AddEffectFromEnemy = true;
                ctrlResMgr.AddEnemyEffectPos = actorCh.BasePos;
            }

            actorSpeek(actorCh);
            }
            moveCh(actorCh);
            return true;
        }
Пример #15
0
        private bool frameMurder(ActorChHobit actorCh)
        {
            actorCh.AiMoveCount--;
            if(actorCh.AiMoveCount < 0){
            actorCh.MovedFlag = true;

            if(actorCh.texId == (int)Data.Tex2dResId.Noumin1){
                actorCh.AiMoveRot += Common.VectorUtil.GetRotY( actorCh.AiMoveRot,actorCh.BasePos,meanChPos(true,true,false,true)) + StaticDataList.getRandom(-20,20);
                if(StaticDataList.random100() < (int)Data.SetupValue.BattleNouminDeadRand) actorCh.changeId((int)Data.Tex2dResId.Zonbi1);
            }
            if(actorCh.texId == (int)Data.Tex2dResId.Senshi1){
                actorCh.AiMoveRot += Common.VectorUtil.GetRotY( actorCh.AiMoveRot,actorCh.BasePos,meanChPos(true,true,false,true)) + StaticDataList.getRandom(-20,20);
                if(StaticDataList.random100() < (int)Data.SetupValue.BattleSenshiDeadRand) actorCh.changeId((int)Data.Tex2dResId.Zonbi1);
            }
            if(actorCh.texId == (int)Data.Tex2dResId.Souryo1){
                randomMoveToTowerWall(actorCh);
                if(StaticDataList.random100() < (int)Data.SetupValue.BattleSouryoDeadRand*2*rateCh(false,false,false,true)) actorCh.changeId((int)Data.Tex2dResId.Zonbi1);
            }
            if(actorCh.texId == (int)Data.Tex2dResId.Zonbi1){
                actorCh.AiMoveRot += Common.VectorUtil.GetRotY( actorCh.AiMoveRot,actorCh.BasePos,meanChPos(true,true,false,true)) + StaticDataList.getRandom(-20,20);
                if(StaticDataList.random100() < (int)Data.SetupValue.BattleZonbi2DeadRand*2*rateCh(false,false,true,false)) actorCh.setdeadFlag(true);
            }

            battleEffect(actorCh);
            actorSpeek(actorCh);
            }
            moveCh(actorCh);
            return true;
        }
Пример #16
0
 private bool frameBreakTower(ActorChHobit actorCh)
 {
     return(true);
 }
Пример #17
0
 private void glowTowerWall(ActorChHobit actorCh, int towerNumber)
 {
     float dis;
     if(towerNumber < ctrlResMgr.CtrlTo.GetEntryNum()){
     dis = Common.VectorUtil.DistanceXZ(actorCh.BasePos,ctrlResMgr.CtrlTo.GetPos(towerNumber));
     if(dis < (int)Data.SetupValue.TowerGlowArea/10.0f && ctrlResMgr.CtrlTo.GetUseActorBaseObj(towerNumber).GetTexId() != 0){
         ctrlResMgr.CtrlTo.GetUseActorBaseObj(towerNumber).glowCounter++;
     //				actorCh.setdeadFlag(true);
     }
     }else{
     dis = Common.VectorUtil.DistanceXZ(actorCh.BasePos,ctrlResMgr.CtrlWall.GetPos(towerNumber-ctrlResMgr.CtrlTo.GetEntryNum()));
     if(dis < (int)Data.SetupValue.TowerGlowArea/10.0f && ctrlResMgr.CtrlWall.GetUseActorBaseObj(towerNumber-ctrlResMgr.CtrlTo.GetEntryNum()).GetTexId() != 0){
         ctrlResMgr.CtrlWall.GetUseActorBaseObj(towerNumber-ctrlResMgr.CtrlTo.GetEntryNum()).glowCounter++;
     //				actorCh.setdeadFlag(true);
     }
     }
 }
Пример #18
0
        /// private メソッド
        ///---------------------------------------------------------------------------
        /// フレーム:移動
        private bool frameMove( ActorChHobit actorCh)
        {
            actorCh.AiMoveCount--;
            if(actorCh.AiMoveCount < 0 ){

            actorCh.MovedFlag = true;
            if(actorCh.texId < (int)Data.Tex2dResId.NormalCharMax){
                int ToNumber = ctrlResMgr.CtrlTo.GetEntryNum() + ctrlResMgr.CtrlWall.GetEntryNum();
                if(ToNumber == 0){
                    actorCh.AiMoveRot = (int)StaticDataList.getRandom(0,360);
                }else{
                    int towerNumber = (int)StaticDataList.getRandom(0,ToNumber);
                    glowTowerWall(actorCh,towerNumber);
                    moveToTowerWall(actorCh,towerNumber);
                }
            }
            if(actorCh.texId == (int)Data.Tex2dResId.Zonbi1){
                actorCh.AiMoveRot += Common.VectorUtil.GetRotY( actorCh.AiMoveRot,actorCh.BasePos,ctrlResMgr.EnemyMoPos) + StaticDataList.getRandom(-10,10);
            }

            actorCh.AiMoveCount = (int)(Data.SetupValue.CharMoveChangeTime + StaticDataList.getRandom(-(int)(Data.SetupValue.CharMoveChangeRandTime),(int)Data.SetupValue.CharMoveChangeRandTime));

            actorSpeek(actorCh);
            }
            moveCh(actorCh);
            return true;
        }
Пример #19
0
 private void moveCh(ActorChHobit actorCh)
 {
     if(actorCh.FrameFlag == true){
     actorCh.SetStateMove( new Vector3( actorCh.BaseMtx.M31,actorCh.BaseMtx.M32,actorCh.BaseMtx.M33 ),
                          moveSpeed, actorCh.AiMoveRot, false );
     }else{
     actorCh.SetStateMove( new Vector3( actorCh.BaseMtx.M31,actorCh.BaseMtx.M32,actorCh.BaseMtx.M33 ),
                          0, actorCh.AiMoveRot, false );
     }
 }
Пример #20
0
 private void actorSpeek(ActorChHobit actorCh)
 {
     actorCh.AiMoveCount = (int)(Data.SetupValue.CharMoveChangeTime + StaticDataList.getRandom(-(int)(Data.SetupValue.CharMoveChangeRandTime),(int)Data.SetupValue.CharMoveChangeRandTime));
     if(actorCh.texId != (int)Data.Tex2dResId.Zonbi1 && actorCh.texId != (int)Data.Tex2dResId.Necromancer1){
     if(StaticDataList.getRandom(0,100) < (int)Data.SetupValue.BaloonAppearRand && actorCh.deadFlagSp == true && speakCount < 6){
         actorCh.setAppearCountSp((int)Data.SetupValue.AppearAndLeaveTime);
         speakCount++;
         int charVoNumber = StaticDataList.getRandom(3);
         switch(charVoNumber){
             case 0: AppSound.GetInstance().PlaySeCamDis( AppSound.SeId.CharVo1,actorCh.GetBodyPos() ); break;
             case 1: AppSound.GetInstance().PlaySeCamDis( AppSound.SeId.CharVo2,actorCh.GetBodyPos() ); break;
             case 2: AppSound.GetInstance().PlaySeCamDis( AppSound.SeId.CharVo3,actorCh.GetBodyPos() ); break;
         }
     }
     }else if(actorCh.texId == (int)Data.Tex2dResId.Zonbi1){
     if(StaticDataList.getRandom(0,100) < (int)Data.SetupValue.GionAppearRand && actorCh.deadFlagSp == true && speakCount < 6 ){
         actorCh.setAppearCountSp((int)Data.SetupValue.GionAppearSpeed);
         speakCount++;
         AppSound.GetInstance().PlaySeCamDis( AppSound.SeId.ZonbiVo3,actorCh.GetBodyPos() );
     }
     }
 }
Пример #21
0
 private void randomMoveToTowerWall(ActorChHobit actorCh)
 {
     int ToNumber = ctrlResMgr.CtrlTo.GetEntryNum() + ctrlResMgr.CtrlWall.GetEntryNum();
     if(ToNumber == 0){
     actorCh.AiMoveRot = (int)StaticDataList.getRandom(0,360);
     }else{
     int towerNumber = (int)StaticDataList.getRandom(0,ToNumber);
     moveToTowerWall(actorCh,towerNumber);
     }
 }
Пример #22
0
 private void moveToTowerWall(ActorChHobit actorCh , int towerNumber)
 {
     float tempRot;
     if(towerNumber < ctrlResMgr.CtrlTo.GetEntryNum()){
     tempRot = Common.VectorUtil.GetRotY(actorCh.AiMoveRot, actorCh.BasePos ,ctrlResMgr.CtrlTo.GetPos(towerNumber));
     }else{
     tempRot = Common.VectorUtil.GetRotY(actorCh.AiMoveRot, actorCh.BasePos ,ctrlResMgr.CtrlWall.GetPos(towerNumber-ctrlResMgr.CtrlTo.GetEntryNum()));
     }
     actorCh.AiMoveRot += tempRot+StaticDataList.getRandom(-3,3);
 }
Пример #23
0
        /// 敵の登録
        public void EntryAddEnemy( int TexId, Vector3 pos)
        {
            ActorChHobit actorCh = new ActorChHobit(TexId);
            actorCh.Init();
            actorCh.Start();

            actorChList.Add( actorCh );

            SetPlace( (actorChList.Count-1), pos );
        }
Пример #24
0
 private bool frameEat(ActorChHobit actorCh)
 {
     GameCtrlManager            ctrlResMgr    = GameCtrlManager.GetInstance();
     if(actorCh.GetStateId() != ActorChBase.StateId.Eat){
     actorCh.AiMoveCount--;
     if(actorCh.AiMoveCount < 0){
         actorCh.AiMoveRot = (int)StaticDataList.getRandom(360);
         actorCh.AiMoveCount = (int)(Data.SetupValue.CharMoveChangeTime + StaticDataList.getRandom(-(int)(Data.SetupValue.CharMoveChangeRandTime),(int)Data.SetupValue.CharMoveChangeRandTime));
     }
     actorCh.SetStateMove( new Vector3( actorCh.BaseMtx.M31,actorCh.BaseMtx.M32,actorCh.BaseMtx.M33 ),
        		                          moveSpeed, actorCh.AiMoveRot, false );
     }
     return true;
 }