예제 #1
0
 public void Init(SimpleAIRunner pSimpleAIRunner, SimpleAIStateJudger pSimpleAIStateJudger, GameObject pAITemplete, GameObject pPlayer, Vector3 pPos)
 {
     ECSWorld.MainWorld.registerEntityAfterInit(this);
     mSimpleAIRunner      = pSimpleAIRunner;
     mSimpleAIStateJudger = pSimpleAIStateJudger;
     mAITemplate          = pAITemplete;
     mPlayer     = pPlayer;
     GeneratePos = pPos;
     mAIRT       = GameObject.Instantiate(mAITemplate, GeneratePos, Quaternion.identity) as GameObject;
     this.AddComponent <LODComponent> (new LODComponent());
     SimpleAISetSingleton.getInstance().GetComponent <SimpleAISet> ().mSimpleAIList.Add(this);
     this.AddComponent <AIMove> (new AIMove());
 }
예제 #2
0
    private SimpleAI RePair(SimpleAIRePairer pRePairer, SimpleAIRunner pRunner, SimpleAIStateJudger pJudger,
                            GameObject pPrefab, GameObject pPlayer, SimpleAIDestroyer pDestroyer, string pType, GAObject pGAObject, int index)
    {
        SimpleAI sAI = new SimpleAI();

        sAI.Init(pRunner, pJudger, pPrefab, pPlayer, pGAObject.mPosition);
        sAI.mSimpleAIRepairer  = pRePairer;
        sAI.mSimpleAIDestroyer = pDestroyer;
        sAI.mType      = pType;
        sAI.mCharacter = pGAObject;
        sAI.mSimpleAIRepairer.DoRePair(sAI);
        sAI.mName = pType + "index" + index;
        return(sAI);
    }