Beispiel #1
0
 private static void AddEntitiesAndTilesToMap(Map map, List <Tile> specialTilePile, int randomSeed, List <ICharacter> entityPile, bool placeBoss)
 {
     foreach (Tile tile in specialTilePile)
     {
         if (tile.GetType() != typeof(ExitTile) && tile.Position == null)
         {
             tile.Position = FindTileOrEntitySpawn.StartingPostion(map, tile);
         }
         map.SetTilePosition(tile.Position, tile.InstanValue);
     }
     for (int i = 0; i < randomSeed; i++)
     {
         NormalMonster monster = new NormalMonster();
         monster.Position = FindTileOrEntitySpawn.StartingPostion(map, monster);
         entityPile.Add(monster);
     }
     if (map.GetType() == typeof(CaveMap) && placeBoss)
     {
         BossToken boss = new BossToken();
         boss.Position = FindTileOrEntitySpawn.StartingPostion(map, boss);
         entityPile.Add(boss);
     }
     foreach (ICharacter entity in entityPile)
     {
         map.SetEntityPosition(entity);
     }
 }
    public void AddSplitBattleBillboard(Vector3 pos, int blood, SplitBattleBillboardType type)
    {
        //return;
        //var head = new MonsterHead(text, type);

        //Quaternion qu = new Quaternion();
        //qu.eulerAngles = new Vector3(0, 0, 0);

        //head.AddToParent(m_stage, qu, pos);

        SplitBattleBillboard sb  = null;
        SuperBattleBillboard ssb = null;

        switch (type)
        {
        case SplitBattleBillboardType.CriticalMonster:
            ssb = new CriticalMonster(blood);
            break;

        case SplitBattleBillboardType.CriticalPlayer:
            ssb = new CriticalPlayer(blood);
            break;

        case SplitBattleBillboardType.BrokenAttack:
            ssb = new BrokenAttack(blood);
            break;

        case SplitBattleBillboardType.NormalMonster:
            sb = new NormalMonster(blood);
            break;

        case SplitBattleBillboardType.NormalPlayer:
            sb = new NormalPlayer(blood);
            break;

        case SplitBattleBillboardType.Miss:
        default:
            sb = new Miss(blood);
            break;
        }

        if (sb != null)
        {
            sb.SetBillboardPos(pos);
        }
        else
        {
            ssb.SetBillboardPos(pos);
        }
    }
Beispiel #3
0
 public NAttackState(NormalMonster normalMonster)
 {
     norMon = normalMonster;
 }
Beispiel #4
0
 public NPatrolState(NormalMonster normalMonster)
 {
     norMon = normalMonster;
 }
Beispiel #5
0
 public NChaseState(NormalMonster normalMonster)
 {
     norMon = normalMonster;
 }
    public void AddSplitBattleBillboard(Vector3 pos, int blood, SplitBattleBillboardType type)
    {
        //return;
        //var head = new MonsterHead(text, type);

        //Quaternion qu = new Quaternion();
        //qu.eulerAngles = new Vector3(0, 0, 0);

        //head.AddToParent(m_stage, qu, pos);

        SplitBattleBillboard sb = null;
        SuperBattleBillboard ssb = null;

        switch (type)
        {

            case SplitBattleBillboardType.CriticalMonster:
                ssb = new CriticalMonster(blood);
                break;

            case SplitBattleBillboardType.CriticalPlayer:
                ssb = new CriticalPlayer(blood);
                break;

            case SplitBattleBillboardType.BrokenAttack:
                ssb = new BrokenAttack(blood);
                break;

            case SplitBattleBillboardType.NormalMonster:
                sb = new NormalMonster(blood);
                break;

            case SplitBattleBillboardType.NormalPlayer:
                sb = new NormalPlayer(blood);
                break;

            case SplitBattleBillboardType.Miss:
            default:
                sb = new Miss(blood);
                break;
        }

        if (sb != null)
        {
            sb.SetBillboardPos(pos);
        }
        else
        {
            ssb.SetBillboardPos(pos);
        }
    }