public SkeletonWarrior() { Name = "Skeleton Warrior"; Figure = "$"; Random rnd = new Random(); Exp = rnd.Next(300, 800); Lvl = Convert.ToInt32(Math.Round(Convert.ToDecimal((Exp / 100)), MidpointRounding.AwayFromZero)); HP_max = Lvl; HP = rnd.Next(1, HP_max + 1); Description = String.Format("a well-equipped skeleton. It used to be a good warrior in past ({0} lvl)", Lvl); for (int i = 0; i < Lvl; i++) { if (rnd.Next(2) == 1) { Strength++; } else { Dexterity++; } } if (rnd.Next(2) == 1) { Active_Weapon = new WoodenDagger(); } else { Active_Weapon = new IronSword(); } }
void setItem() { var pot = new HOZON(); var cane = new Sanctuary(); var weapon = new IronSword(); var potion = new SleepPotion(); var potion2 = new LevelUpPotion(); pot.init(5); cane.init(); weapon.init(0); potion.init(); potion2.init(); Vector2 pos = new Vector2(5, 8); ObjectEntityFactory.createItemEntity(pot, pos + new Vector2(0,0),true); ObjectEntityFactory.createItemEntity(cane, pos+new Vector2(0,1), true); ObjectEntityFactory.createItemEntity(weapon, pos + new Vector2(0, 2), true); ObjectEntityFactory.createItemEntity(potion, pos + new Vector2(0, 3), true); pos += new Vector2(1, 0); ObjectEntityFactory.createItemEntity(pot, pos + new Vector2(0, 0), true); ObjectEntityFactory.createItemEntity(cane, pos + new Vector2(0, 1), true); ObjectEntityFactory.createItemEntity(weapon, pos + new Vector2(0, 2), true); ObjectEntityFactory.createItemEntity(potion, pos + new Vector2(0, 3), true); pos += new Vector2(1, 0); ObjectEntityFactory.createItemEntity(pot, pos + new Vector2(0, 0), true); ObjectEntityFactory.createItemEntity(cane, pos + new Vector2(0, 1), true); ObjectEntityFactory.createItemEntity(weapon, pos + new Vector2(0, 2), true); ObjectEntityFactory.createItemEntity(potion2, pos + new Vector2(0, 3), true); pos += new Vector2(1, 0); ObjectEntityFactory.createItemEntity(pot, pos + new Vector2(0, 0), true); ObjectEntityFactory.createItemEntity(cane, pos + new Vector2(0, 1), true); ObjectEntityFactory.createItemEntity(weapon, pos + new Vector2(0, 2), true); ObjectEntityFactory.createItemEntity(potion2, pos + new Vector2(0, 3), true); pos += new Vector2(1, 0); }
public Guard() { Name = "Skeleton Guard"; Figure = "G"; Random rnd = new Random(); Exp = rnd.Next(700, 1301); Lvl = Convert.ToInt32(Math.Round(Convert.ToDecimal((Exp / 100)), MidpointRounding.AwayFromZero)); HP_max = Lvl; HP = HP_max; Description = String.Format("a skeleton Guard. It will put its life to make you stay in the dungeon forever ({0} lvl)", Lvl); for (int i = 0; i < Lvl; i++) { if (rnd.Next(2) == 1) { Strength++; } else { Dexterity++; } } if (rnd.Next(2) == 1) { Active_Weapon = new SilverSpear(); } else { Active_Weapon = new IronSword(); } }
public IEnumerator EquipTest1() { Character character = GameManager.CurrentLevel.GetCharacter(0, 0); Item item = IronSword.Create(); character.Equip(item); LogAssert.Expect(LogType.Error, "Iron Sword does not exist in inventory."); yield return(null); }
public IEnumerator ValidateRightPlacement() { Character sourceCharacter = GameManager.CurrentLevel.GetCharacter(0, 0); sourceCharacter.Items.Clear(); sourceCharacter.Items.Add(IronSword.Create()); sourceCharacter.AddProficiency(new Proficiency(typeof(Sword), Proficiency.Rank.A)); Character targetCharacter = GameManager.CurrentLevel.GetCharacter(0, 1); GameManager.AttackDetailPanel.Show(sourceCharacter, targetCharacter); Assert.True(GameManager.AttackDetailPanel.gameObject.activeSelf); yield return(null); }
public IEnumerator EndActionTest4() { Character sourceCharacter = GameManager.CurrentLevel.GetCharacter(2, 2); sourceCharacter.Items.Clear(); sourceCharacter.Items.Add(IronSword.Create()); sourceCharacter.Items.Add(Fire.Create()); Character targetCharacter = GameManager.CurrentLevel.GetCharacter(2, 1); targetCharacter.Items.Clear(); targetCharacter.Items.Add(Fire.Create()); // Move cursor yield return(MoveCursor(2, 2)); // select character yield return(Submit()); // select move yield return(Submit()); // select trade yield return(DownArrow()); yield return(Submit()); // select trading character yield return(Submit()); // trade item yield return(Submit()); Assert.AreEqual(1, sourceCharacter.Items.Count); Assert.AreEqual(2, targetCharacter.Items.Count); //Assert.AreEqual(Cursor.State.Free, GameManager.Cursor.CurrentState); Assert.True(GameManager.CurrentLevel.GetCharacter(2, 2).HasMoved); Assert.True(GameManager.CurrentLevel.GetCharacter(2, 2).HasTraded); Assert.False(GameManager.CurrentLevel.GetCharacter(2, 1).HasMoved); Assert.False(GameManager.CurrentLevel.GetCharacter(2, 1).HasTraded); }
// Use this for initialization public Alexis() { this.playerName = "Alexis"; this.playerClass = "Soldier"; this.playerProfile = "Images/Cloud"; this.playerLevel = 1; this.strength = 35; this.intelligence = 15; this.speed = 15; this.spirit = 10; this.defense = 35; this.hitPoints = 150; this.currentHP = this.hitPoints; this.magicPoints = 50; this.currentMP = this.magicPoints; weapon = new IronSword(); armor = new LeatherArmor(); accessory = new HPRing(); UpdatePlayer(); }
// Use this for initialization public Alexis() { this.playerName = "Alexis"; this.playerClass = "Soldier"; this.playerProfile = "Images/Cloud"; this.playerLevel = 1; this.strength = 35; this.intelligence = 15; this.speed = 15; this.spirit = 10; this.defense = 35; this.hitPoints = 150; this.currentHP = this.hitPoints; this.magicPoints = 50; this.currentMP = this.magicPoints; weapon = new IronSword (); armor = new LeatherArmor (); accessory = new HPRing (); UpdatePlayer (); }
public IEnumerator TradingTest3() { Character sourceCharacter = GameManager.CurrentLevel.GetCharacter(2, 2); sourceCharacter.Items.Clear(); sourceCharacter.Items.Add(IronSword.Create()); sourceCharacter.Items.Add(Fire.Create()); Character targetCharacter = GameManager.CurrentLevel.GetCharacter(2, 1); targetCharacter.Items.Clear(); targetCharacter.Items.Add(Fire.Create()); // Move cursor yield return(MoveCursor(2, 2)); // select character yield return(Submit()); // select move yield return(Submit()); // select trade yield return(DownArrow()); yield return(Submit()); // select trading character yield return(Submit()); yield return(Cancel()); Assert.False(GameManager.TradeDetailPanel.IsInFocus()); Assert.True(GameManager.Cursor.IsInFocus()); Assert.AreEqual(Cursor.State.ChoosingTradeTarget, GameManager.Cursor.CurrentState); }
//Main Data Structure public GameWorldInfo() { RoomMapFileInfo rmmapInfo = null; WorldMapInfo = new WorldMap(); rmmapInfo = RoomInfoFileReader.ReadRoomMapInfo(ConfigManager.RoomInfoFile); RoomMapList = rmmapInfo.roomaplist; dropPointlist = rmmapInfo.dropPointlist; boundaryPointlist = rmmapInfo.boundaryPointlist; if (RoomMapList != null) { NumberOfRooms = RoomMapList.Count; } The_Player = new Player(0, 0); //Init the Player GameRoom rm = null; for (int roomindex = 0; roomindex < NumberOfRooms; roomindex++) { GameRoomList.Add(new GameRoom(RoomMapList.ElementAt(roomindex))); rm = GameRoomList.ElementAt(roomindex); rm.GenerateEnvrionemnt(); NumberOfMonster = NumberOfMonster + rm.MonsterList.Count; NumberOfGlobin = NumberOfGlobin + rm.GlobinList.Count; } //Generate item in room int maxnoitem = ConfigManager.MaxChestPerWorld; int rmindex = 0; Random random = ConfigManager.RandomGen; Dictionary <string, string> ItemsHashTable = new Dictionary <string, string>(); int col = 0; int row = 0; Chest chestobj = null; String key = null; //Chest First for (int item = 0; item < maxnoitem; item++) { while (true) { rmindex = random.Next(0, NumberOfRooms - 1); //Get a Random Room if (!ItemsHashTable.ContainsKey(Convert.ToString(rmindex))) { ItemsHashTable.Add(Convert.ToString(rmindex), Convert.ToString(rmindex)); rm = GameRoomList.ElementAt(rmindex); while (true) { col = random.Next( ((RoomMap.RoomWidth - RoomMap.RoomEffectiveWidth) / 2) + 1, ((RoomMap.RoomWidth - RoomMap.RoomEffectiveWidth) / 2) + RoomMap.RoomEffectiveWidth - 1); row = random.Next(0, RoomMap.RoomHeight - 1); if (!rm.IsLocationInRoomTaken(col, row) && rm.Room_Map.IsEmpty(col, row)) { key = col + "-" + row; chestobj = new Chest("Treasure Chest", col + PlayUIWorldMap.mapBoxColPos, row + PlayUIWorldMap.mapBoxRowPos, key); rm.ChestList.Add(chestobj); rm.ItemsHashTable.Add(key, chestobj); rm.TotalItem++; break; } } } break; } } //Key Next maxnoitem = ConfigManager.MaxKeyPerWorld; Key keyobj = null; ItemsHashTable = new Dictionary <string, string>(); for (int item = 0; item < maxnoitem; item++) { while (true) { rmindex = random.Next(0, NumberOfRooms - 1); //Get a Random Room if (!ItemsHashTable.ContainsKey(Convert.ToString(rmindex))) { ItemsHashTable.Add(Convert.ToString(rmindex), Convert.ToString(rmindex)); rm = GameRoomList.ElementAt(rmindex); while (true) { col = random.Next( ((RoomMap.RoomWidth - RoomMap.RoomEffectiveWidth) / 2) + 1, ((RoomMap.RoomWidth - RoomMap.RoomEffectiveWidth) / 2) + RoomMap.RoomEffectiveWidth - 1); row = random.Next(0, RoomMap.RoomHeight - 1); if (!rm.IsLocationInRoomTaken(col, row) && rm.Room_Map.IsEmpty(col, row)) { key = col + "-" + row; keyobj = new Key("Treasure Chest Key", col + PlayUIWorldMap.mapBoxColPos, row + PlayUIWorldMap.mapBoxRowPos, key); rm.KeyList.Add(keyobj); rm.ItemsHashTable.Add(key, keyobj); rm.TotalItem++; break; } } } break; } } //Iron Armour Next maxnoitem = ConfigManager.MaxIronArmourPerWorld; IronArmour amobj = null; ItemsHashTable = new Dictionary <string, string>(); for (int item = 0; item < maxnoitem; item++) { while (true) { rmindex = random.Next(0, NumberOfRooms - 1); //Get a Random Room if (!ItemsHashTable.ContainsKey(Convert.ToString(rmindex))) { ItemsHashTable.Add(Convert.ToString(rmindex), Convert.ToString(rmindex)); rm = GameRoomList.ElementAt(rmindex); while (true) { col = random.Next( ((RoomMap.RoomWidth - RoomMap.RoomEffectiveWidth) / 2) + 1, ((RoomMap.RoomWidth - RoomMap.RoomEffectiveWidth) / 2) + RoomMap.RoomEffectiveWidth - 1); row = random.Next(0, RoomMap.RoomHeight - 1); if (!rm.IsLocationInRoomTaken(col, row) && rm.Room_Map.IsEmpty(col, row)) { key = col + "-" + row; amobj = new IronArmour("Iron Armour", col + PlayUIWorldMap.mapBoxColPos, row + PlayUIWorldMap.mapBoxRowPos, key); rm.ArmourList.Add(amobj); rm.ItemsHashTable.Add(key, amobj); rm.TotalItem++; break; } } } break; } } //Wooden Armour Next maxnoitem = ConfigManager.MaxWoodenArmourPerWorld; WoodenArmour wmobj = null; ItemsHashTable = new Dictionary <string, string>(); for (int item = 0; item < maxnoitem; item++) { while (true) { rmindex = random.Next(0, NumberOfRooms - 1); //Get a Random Room if (!ItemsHashTable.ContainsKey(Convert.ToString(rmindex))) { ItemsHashTable.Add(Convert.ToString(rmindex), Convert.ToString(rmindex)); rm = GameRoomList.ElementAt(rmindex); while (true) { col = random.Next( ((RoomMap.RoomWidth - RoomMap.RoomEffectiveWidth) / 2) + 1, ((RoomMap.RoomWidth - RoomMap.RoomEffectiveWidth) / 2) + RoomMap.RoomEffectiveWidth - 1); row = random.Next(0, RoomMap.RoomHeight - 1); if (!rm.IsLocationInRoomTaken(col, row) && rm.Room_Map.IsEmpty(col, row)) { key = col + "-" + row; wmobj = new WoodenArmour("Wooden Armour", col + PlayUIWorldMap.mapBoxColPos, row + PlayUIWorldMap.mapBoxRowPos, key); rm.ArmourList.Add(wmobj); rm.ItemsHashTable.Add(key, wmobj); rm.TotalItem++; break; } } } break; } } //Iron Sword Next maxnoitem = ConfigManager.MaxIronSwordPerWorld; IronSword iswbj = null; ItemsHashTable = new Dictionary <string, string>(); for (int item = 0; item < maxnoitem; item++) { while (true) { rmindex = random.Next(0, NumberOfRooms - 1); //Get a Random Room if (!ItemsHashTable.ContainsKey(Convert.ToString(rmindex))) { ItemsHashTable.Add(Convert.ToString(rmindex), Convert.ToString(rmindex)); rm = GameRoomList.ElementAt(rmindex); while (true) { col = random.Next( ((RoomMap.RoomWidth - RoomMap.RoomEffectiveWidth) / 2) + 1, ((RoomMap.RoomWidth - RoomMap.RoomEffectiveWidth) / 2) + RoomMap.RoomEffectiveWidth - 1); row = random.Next(0, RoomMap.RoomHeight - 1); if (!rm.IsLocationInRoomTaken(col, row) && rm.Room_Map.IsEmpty(col, row)) { key = col + "-" + row; iswbj = new IronSword("Iron Sword", col + PlayUIWorldMap.mapBoxColPos, row + PlayUIWorldMap.mapBoxRowPos, key); rm.WeaponList.Add(iswbj); rm.ItemsHashTable.Add(key, iswbj); rm.TotalItem++; break; } } } break; } } //Wooden Sword Next maxnoitem = ConfigManager.MaxWoodenSwordPerWorld; WoodenSword wswbj = null; ItemsHashTable = new Dictionary <string, string>(); for (int item = 0; item < maxnoitem; item++) { while (true) { rmindex = random.Next(0, NumberOfRooms - 1); //Get a Random Room if (!ItemsHashTable.ContainsKey(Convert.ToString(rmindex))) { ItemsHashTable.Add(Convert.ToString(rmindex), Convert.ToString(rmindex)); rm = GameRoomList.ElementAt(rmindex); while (true) { col = random.Next( ((RoomMap.RoomWidth - RoomMap.RoomEffectiveWidth) / 2) + 1, ((RoomMap.RoomWidth - RoomMap.RoomEffectiveWidth) / 2) + RoomMap.RoomEffectiveWidth - 1); row = random.Next(0, RoomMap.RoomHeight - 1); if (!rm.IsLocationInRoomTaken(col, row) && rm.Room_Map.IsEmpty(col, row)) { key = col + "-" + row; wswbj = new WoodenSword("Wooden Sword", col + PlayUIWorldMap.mapBoxColPos, row + PlayUIWorldMap.mapBoxRowPos, key); rm.WeaponList.Add(wswbj); rm.ItemsHashTable.Add(key, wswbj); rm.TotalItem++; break; } } } break; } } }
private void setItemOld() { var ret = new ItemBasis[12]; ret[0] = new IronSword(); (ret[0] as EquipmentItemBasis).init(2); ret[1] = new WoodArrow(); ret[2] = new ConfusionPotion(); ret[3] = new ParalyzePotion(); ret[4] = new SleepPotion(); ret[5] = new PoisonPotion(); ret[6] = new AntiPoisonPotion(); ret[7] = new DragonPotion(); ret[8] = new FirePotion(); ret[9] = new BullRush(5); ret[10] = new FireBall(5); ret[11] = new BombPot(); Commodities.Add(new BronzeShield()); Commodities.AddRange(ret); Commodities.Add(new WoodFlooring()); Commodities.Add(new WoodPillar()); Commodities.Add(new WoodWall()); Commodities.Add(new MiddleBread()); Commodities.Add(new HealPotion2()); Commodities.Add(new Water()); Commodities.Add(new WarpPotion()); Commodities.Add(new STRUpPotion()); Commodities.Add(new HPUpPotion()); Commodities.Add(new HungerUpPotion()); Commodities.Add(new HungerDownPotion()); Commodities.Add(new SpeedUpPotion()); Commodities.Add(new LevelDownPotion2()); Commodities.Add(new LevelUpPotion2()); Commodities.Add(new HealPotion3()); Commodities.Add(new PerceptionPotion()); Commodities.Add(new BlindPotion()); // Commodities.Add(new LargeBread()); Commodities.Add(new VeryLargeBread()); // Commodities.Add(new AppraiseBook()); Commodities.Add(new BakeryBook()); Commodities.Add(new ConfusionBook()); Commodities.Add(new CoatBook()); Commodities.Add(new DontMoveBook()); Commodities.Add(new EnemeyGatherBook()); Commodities.Add(new EscapeBook()); Commodities.Add(new ExorcismBook()); Commodities.Add(new HawkEyeBook()); Commodities.Add(new ItemGatherBook()); Commodities.Add(new NoTitleBook()); Commodities.Add(new PotExpantionBook()); Commodities.Add(new PotHardeningBook()); Commodities.Add(new Inazuma()); Commodities.Add(new RockFallBook()); Commodities.Add(new WeaponEnchantmentBook()); Commodities.Add(new ShieldEnchantmentBook()); Commodities.Add(new SleepBook()); Commodities.Add(new TrapDestroyBook()); Commodities.Add(new TrapMakeBook()); Commodities.Add(new Suidashi()); // Commodities.Add(new DecoyCane()); Commodities.Add(new SealedCane()); Commodities.Add(new AtkDownCane()); Commodities.Add(new DefDownCane()); Commodities.Add(new BombCane()); Commodities.Add(new HealCane()); Commodities.Add(new ExciteCane()); Commodities.Add(new LevelUpCana()); Commodities.Add(new LevelDownCane()); Commodities.Add(new MissedSwingCana()); Commodities.Add(new PalliativeCane()); Commodities.Add(new ParalyzeCane()); Commodities.Add(new PullOnCane()); Commodities.Add(new SnatchCane()); Commodities.Add(new SpeedUpCane()); Commodities.Add(new SpeedDownCane()); Commodities.Add(new SwapHpCane()); Commodities.Add(new SwapPositionCane()); Commodities.Add(new TenFeetStick()); // Commodities.Add(new AppraisePot()); Commodities.Add(new CompositionPot()); Commodities.Add(new CursingPot()); Commodities.Add(new EnhancedPot()); Commodities.Add(new WeakenedPot()); Commodities.Add(new ExoricismPot()); Commodities.Add(new HealPot()); Commodities.Add(new ItemChangePot()); Commodities.Add(new MaterialPot()); Commodities.Add(new SoldPot()); Commodities.Add(new VanilaPot()); Commodities.Add(new VoidPot()); Commodities.Add(new WarehousePot()); // Commodities.Add(new IronArrow()); Commodities.Add(new SilverArrow()); Commodities.Add(new PoisonArrow()); Commodities.Add(new SagittariusArrow()); // Commodities.Add(new TestBangle()); Commodities.Add(new AntiPoisonBangle()); Commodities.Add(new AntiParalyzeBangle()); Commodities.Add(new AntiSleepBangle()); Commodities.Add(new AntiConfusionBangle()); Commodities.Add(new LongCastBangle()); Commodities.Add(new STRUpBangle()); Commodities.Add(new HealBangle()); Commodities.Add(new AutoWarpBangle()); Commodities.Add(new ExorcismBangle()); Commodities.Add(new AutoExpGainBangle()); Commodities.Add(new BombBangle()); Commodities.Add(new ItemClairvoyanceBangle()); Commodities.Add(new EnemyClairvoyanceBangle()); Commodities.Add(new HawkEyeBangle()); Commodities.Add(new AutoAppraiseBangle()); Commodities.Add(new WallWalkBangle()); Commodities.Add(new SneakWalkBangle()); Commodities.Add(new CriticalBangle()); Commodities.Add(new PainBlowBangle()); //// Commodities.Add(new IronSield()); Commodities.Add(new TowerShield()); Commodities.Add(new TurtleShield()); Commodities.Add(new AegisShield()); Commodities.Add(new DragonSteelShield()); Commodities.Add(new PotLidShield()); Commodities.Add(new OldShield()); Commodities.Add(new MagicReflectionShield()); Commodities.FindAll(item => !item.IsInitalized).ForEach(item => item.init()); }
public static void testWrite() { if (!Directory.Exists(savedir)) { Debug.LogError("Save Directory is None!"); Directory.CreateDirectory(savedir); } LocalSaveData test = new LocalSaveData(); test.Player.Position = new Vector2(3, 7); test.Player.PlayerName = "たかし"; var ken = new IronSword(); ken.init(3); var arrow = new WoodArrow(); arrow.init(12); var tubo = new HOZON(); tubo.init(4); tubo.putinItem(arrow); Debug.Log("Pot: "+tubo.showInventory()); ItemInventory inv = new ItemInventory(10); inv.add(ken,tubo,arrow); test.Player.ParameterData.Inventory = ItemData.convert(inv); test.Player.ParameterData.InventorySize = inv.InventorySize; string json = JsonUtility.ToJson(test,true); Debug.Log(json); string savepath = savedir + @"\saveTest"; using (FileStream fs = new FileStream(savepath,FileMode.Create,FileAccess.Write)) { BinaryFormatter bf = new BinaryFormatter(); bf.Serialize(fs, json); } testLoad(); }
public IEnumerator TradingTest2() { Character sourceCharacter = GameManager.CurrentLevel.GetCharacter(2, 2); sourceCharacter.Items.Clear(); sourceCharacter.Items.Add(IronSword.Create()); sourceCharacter.Items.Add(Fire.Create()); Character targetCharacter = GameManager.CurrentLevel.GetCharacter(2, 1); targetCharacter.Items.Clear(); targetCharacter.Items.Add(Fire.Create()); // Move cursor yield return(MoveCursor(2, 2)); // select character yield return(Submit()); // select move yield return(Submit()); // select trade yield return(DownArrow()); yield return(Submit()); // select trading character yield return(Submit()); yield return(Submit()); Assert.AreEqual(1, sourceCharacter.Items.Count); Assert.AreEqual(2, targetCharacter.Items.Count); yield return(DownArrow()); Assert.AreEqual(TradeDetailPanel.Side.SOURCE, GameManager.TradeDetailPanel.CurrentSide); // Press right yield return(RightArrow()); Assert.AreEqual(TradeDetailPanel.Side.DESTINATION, GameManager.TradeDetailPanel.CurrentSide); yield return(DownArrow()); Assert.AreEqual(TradeDetailPanel.Side.DESTINATION, GameManager.TradeDetailPanel.CurrentSide); yield return(DownArrow()); Assert.AreEqual(TradeDetailPanel.Side.DESTINATION, GameManager.TradeDetailPanel.CurrentSide); yield return(LeftArrow()); Assert.AreEqual(TradeDetailPanel.Side.SOURCE, GameManager.TradeDetailPanel.CurrentSide); yield return(LeftArrow()); Assert.AreEqual(TradeDetailPanel.Side.SOURCE, GameManager.TradeDetailPanel.CurrentSide); yield return(RightArrow()); Assert.AreEqual(TradeDetailPanel.Side.DESTINATION, GameManager.TradeDetailPanel.CurrentSide); yield return(Submit()); Assert.AreEqual(2, sourceCharacter.Items.Count); Assert.AreEqual(1, targetCharacter.Items.Count); }
/// <summary> /// Initialize the terrain map and characters. Should only be called by Level.Init(GameManager,Player,Player) /// </summary> protected override void Init() { TerrainMap = new Terrain.Terrain[4, 4]; CharacterMap = new Character[4, 4]; TerrainMap[0, 0] = Create <Terrain.Terrain>(GameManager.GrassTerrain); TerrainMap[0, 1] = Create <Terrain.Terrain>(GameManager.GrassTerrain); TerrainMap[0, 2] = Create <Terrain.Terrain>(GameManager.GrassTerrain); TerrainMap[0, 3] = Create <Terrain.Terrain>(GameManager.GrassTerrain); TerrainMap[1, 0] = Create <Terrain.Terrain>(GameManager.GrassTerrain); TerrainMap[1, 1] = Create <Terrain.Terrain>(GameManager.GrassTerrain); TerrainMap[1, 2] = Create <Terrain.Terrain>(GameManager.GrassTerrain); TerrainMap[1, 3] = Create <Terrain.Terrain>(GameManager.GrassTerrain); TerrainMap[2, 0] = Create <Terrain.Terrain>(GameManager.GrassTerrain); TerrainMap[2, 1] = Create <Terrain.Terrain>(GameManager.GrassTerrain); TerrainMap[2, 2] = Create <Terrain.Terrain>(GameManager.GrassTerrain); TerrainMap[2, 3] = Create <Terrain.Terrain>(GameManager.GrassTerrain); TerrainMap[3, 0] = Create <Terrain.Terrain>(GameManager.GrassTerrain); TerrainMap[3, 1] = Create <Terrain.Terrain>(GameManager.GrassTerrain); TerrainMap[3, 2] = Create <Terrain.Terrain>(GameManager.WallTerrain); TerrainMap[3, 3] = Create <Terrain.Terrain>(GameManager.ForrestTerrain); CharacterMap[0, 0] = Create <Character>(GameManager.KnightPrefab); CharacterMap[0, 0].Player = AiPlayer; CharacterMap[0, 0].Items.Add(IronSword.Create()); CharacterMap[0, 0].Items.Add(IronSword.Create()); CharacterMap[0, 0].Items.Add(IronSword.Create()); CharacterMap[0, 0].Items.Add(IronSword.Create()); CharacterMap[0, 0].Items.Add(IronSword.Create()); CharacterMap[0, 0].Items.Add(IronSword.Create()); CharacterMap[0, 0].Items.Add(IronSword.Create()); CharacterMap[0, 0].Items.Add(IronSword.Create()); CharacterMap[0, 0].Items.Add(IronSword.Create()); CharacterMap[0, 0].Items.Add(IronSword.Create()); CharacterMap[0, 0].AddProficiency(new Proficiency(typeof(Sword), Proficiency.Rank.E)); CharacterMap[0, 1] = Create <Character>(GameManager.KnightPrefab); CharacterMap[0, 1].Player = AiPlayer; CharacterMap[0, 1].Items.Add(IronSword.Create()); CharacterMap[0, 2] = Create <Character>(GameManager.KnightPrefab); CharacterMap[0, 2].Player = AiPlayer; CharacterMap[0, 2].Items.Add(IronSword.Create()); CharacterMap[0, 3] = Create <Character>(GameManager.KnightPrefab); CharacterMap[0, 3].Player = AiPlayer; CharacterMap[0, 3].Items.Add(IronSword.Create()); CharacterMap[2, 3] = Create <Character>(GameManager.KnightPrefab); CharacterMap[2, 3].Player = AiPlayer; CharacterMap[2, 3].Items.Add(IronSword.Create()); CharacterMap[1, 2] = Create <Character>(GameManager.WizardPrefab); CharacterMap[1, 2].Player = AiPlayer; CharacterMap[1, 2].Items.Add(IronSword.Create()); CharacterMap[1, 2].Items.Add(Incinerate.Create()); CharacterMap[2, 2] = Create <Character>(GameManager.WizardPrefab); CharacterMap[2, 2].Player = HumanPlayer; CharacterMap[2, 2].Items.Add(IronSword.Create()); CharacterMap[2, 2].Items.Add(Fire.Create()); CharacterMap[2, 2].AddProficiency(new Proficiency(typeof(FireMagic), Proficiency.Rank.E)); CharacterMap[2, 2].AddProficiency(new Proficiency(typeof(HealingStaff), Proficiency.Rank.E)); CharacterMap[2, 1] = Create <Character>(GameManager.WizardPrefab); CharacterMap[2, 1].Player = HumanPlayer; CharacterMap[2, 1].CurrentHp = 10; CharacterMap[2, 1].AddProficiency(new Proficiency(typeof(HealingStaff), Proficiency.Rank.E)); CharacterMap[2, 1].Items.Add(Fire.Create()); CharacterMap[2, 1].AddProficiency(new Proficiency(typeof(FireMagic), Proficiency.Rank.E)); CharacterMap[3, 3] = Create <Character>(GameManager.KnightPrefab); CharacterMap[3, 3].Player = AiPlayer; CharacterMap[3, 3].Items.Add(IronAxe.Create()); StartPosition = new Vector2(0, 0); }