示例#1
0
 public void SetPose(CharaStatus.Pose pose)
 {
     this.START_METHOD("SetPose");
     data.pose   = pose;
     bNeedChange = true;
     this.END_METHOD("SetPose");
 }
示例#2
0
 public Chara SpwanCharacter(CharaData.CharClassType type, CharaData.CharModel model, int camp, int level, Vector3 startPos, Vector3 startDir, CharaStatus.Pose pose)
 {
     return(charaManager.SpawnChar(type, (int)model, camp, level, startPos, startDir, pose));
 }
示例#3
0
    public Chara SpawnChar(CharaData.CharClassType classType, int charModelType, int camp, int level, Vector3 pos,
                           Vector3 dir, CharaStatus.Pose pose)
    {
        this.START_METHOD("SpawnChar");
        Chara tempChar = null;

        if (classType == CharaData.CharClassType.CHARACTER)
        {
            if ((CharaData.CharModel)charModelType == CharaData.CharModel.BOWMAN)
            {
                BowMan chara = new BowMan();
                chara.SetPos(pos);
                chara.SetDir(dir);
                chara.SetPose(pose);
                chara.SetCamp(camp);
                tempChar = chara;
            }

            if (tempChar != null)
            {
                chars.Add(tempChar);
            }
            else
            {
                throw new UnityException("no current chara type to spawn");
            }
        }
        else if (classType == CharaData.CharClassType.BUILDING)
        {
            if ((CharaData.BuildingModel)charModelType == CharaData.BuildingModel.BARRACK)
            {
                Barrack chara = new Barrack(); // TODO: need change class to resource pool
                chara.SetPos(pos);
                chara.SetDir(dir);
                chara.SetCamp(camp);
                tempChar = chara;
            }
            else if ((CharaData.BuildingModel)charModelType == CharaData.BuildingModel.CANNON)
            {
                Cannon chara = new Cannon();
                chara.SetPos(pos);
                chara.SetDir(dir);
                chara.SetCamp(camp);
                tempChar = chara;
            }

            if (tempChar != null)
            {
                building.Add(tempChar);
            }
            else
            {
                throw new UnityException("no current building type to spawn");
            }
        }

        allChara.Add(tempChar);

        this.END_METHOD("SpawnChar");
        return(tempChar);
    }