def test_create_army(self):
     world = World()
     
     realm = world.create_realm('Realm0', 0.1, 0.2, 0.3)
     
     army0 = world.create_army(realm)
     self.assertNotEqual(army0, None)
     self.assertEqual(army0.id, 0)
     self.assertEqual(army0.realm, realm)
     self.assertEqual(army0.size, 0)
     self.assertEqual(army0.province, None)
     self.assertEqual(len(world.armies), 1)
     self.assertTrue(army0 in world.armies)
     self.assertEqual(len(realm.armies), 1)
     self.assertTrue(army0 in realm.armies)
     
     army1 = world.create_army(realm)
     self.assertNotEqual(army1, None)
     self.assertEqual(army1.id, 1)
     self.assertEqual(army1.realm, realm)
     self.assertEqual(army1.size, 0)
     self.assertEqual(army1.province, None)
     self.assertEqual(len(world.armies), 2)
     self.assertTrue(army1 in world.armies)
     self.assertEqual(len(realm.armies), 2)
     self.assertTrue(army1 in realm.armies)
Esempio n. 2
0
 def test_create_army(self):
     world = World()
     realm = world.create_realm('Test', 1.0, 1.0, 1.0)
     province = Province(None, 0,0)
     realm.add_province(province)
     
     create0 = CreateArmy(world, realm, province, 1)
     create0.execute()
     
     army0 = create0.army
     self.assertNotEqual(army0, None)
     self.assertEqual(army0.realm, realm)
     self.assertEqual(army0.size, 1)
     self.assertEqual(army0.province, province)
     self.assertEqual(len(province.armies), 1)
     self.assertTrue(army0 in province.armies)
     self.assertEqual(len(realm.armies), 1)
     self.assertTrue(army0 in realm.armies)
     
     create1 = CreateArmy(world, realm, province, 10)
     create1.execute()
     
     army1 = create1.army
     self.assertNotEqual(army1, None)
     self.assertEqual(army1.realm, realm)
     self.assertEqual(army1.size, 10)
     self.assertEqual(army1.province, province)
     self.assertEqual(len(province.armies), 2)
     self.assertTrue(army0 in province.armies)
     self.assertTrue(army1 in province.armies)
     self.assertEqual(len(realm.armies), 2)
     self.assertTrue(army0 in realm.armies)
     self.assertTrue(army1 in realm.armies)
Esempio n. 3
0
 def test_battles(self):
     map = Map()
     map.create(None, 3, 3)
     
     world = World(map)
     realm0 = world.create_realm('Realm0', 1.0, 1.0, 1.0)
     realm1 = world.create_realm('Realm1', 1.0, 1.0, 1.0)
     
     province = map.get_province(0, 0)
             
     army0 = Army(0, realm0)
     army0.size = 2
     army1 = Army(0, realm1)
     army1.size = 1
     
     province.add_army(army0)
     province.add_army(army1)
     
     result = world.tick()
     
     self.assertEqual(len(result.battles), 1)
     
     battle = result.battles[0]
     
     self.assertEqual(battle.army0, army0)
     self.assertEqual(battle.army1, army1)
     
     self.assertEqual(army0.size, 1)
     self.assertEqual(army1.size, 0)
     
     self.assertEqual(army0.province, province)
     self.assertTrue(army0 in province.armies)
     self.assertEqual(army1.province, None)
     self.assertFalse(army1 in province.armies)    
Esempio n. 4
0
 def test_actions(self):
     world = World()
     realm = world.create_realm('Realm0', 1.0, 1.0, 1.0)
     province = Province(None, 0,0)
     action0 = Action()
     province.action = action0
     realm.add_province(province)
     
     result = world.tick()
     
     self.assertEqual(world.turn, 1)
     self.assertEqual(action0.count, 1)
     self.assertEqual(province.action, None)
     self.assertEqual(len(result.battles), 0)
     
     army = world.create_army(realm)
     army.size = 1
     province.add_army(army)
     
     action1 = Action()
     army.action = action1
     
     result = world.tick()
     
     self.assertEqual(world.turn, 2)
     self.assertEqual(action0.count, 1)
     self.assertEqual(action1.count, 1)
     self.assertEqual(army.action, None)
     self.assertEqual(province.action, None)
     self.assertEqual(len(result.battles), 0)
Esempio n. 5
0
 def test_get_realm(self):
     world = World()
     
     realm0 = world.create_realm('Realm0', 0.1, 0.2, 0.3)
     realm1 = world.create_realm('Realm1', 0.1, 0.2, 0.3)
     
     self.assertEqual(realm0, world.get_realm(0))
     self.assertEqual(realm1, world.get_realm(1))
Esempio n. 6
0
 def test_invalid_index(self):
     world = World()
     
     realm0 = world.create_realm('Realm0', 0.1, 0.2, 0.3)
     realm1 = world.create_realm('Realm1', 0.1, 0.2, 0.3)
     
     self.assertEqual(None, world.get_realm(-1))
     self.assertEqual(None, world.get_realm(2))
     self.assertEqual(None, world.get_realm(None))
 def test_create_realm(self):
     world = World()
     
     realm0 = world.create_realm('Realm0', 0.1, 0.2, 0.3)
     self.assertNotEqual(realm0, None)
     self.assertEqual(realm0.id, 0)
     self.assertEqual(realm0.name, 'Realm0')
     self.assertEqual(realm0.color.get_r(), 0.1)
     self.assertEqual(realm0.color.get_g(), 0.2)
     self.assertEqual(realm0.color.get_b(), 0.3)
     self.assertEqual(len(world.realms), 1)
     self.assertTrue(realm0 in world.realms)
     
     realm1 = world.create_realm('Realm1', 0.3, 0.2, 0.1)
     self.assertNotEqual(realm1, None)
     self.assertEqual(realm1.id, 1)
     self.assertEqual(realm1.name, 'Realm1')
     self.assertEqual(realm1.color.get_r(), 0.3)
     self.assertEqual(realm1.color.get_g(), 0.2)
     self.assertEqual(realm1.color.get_b(), 0.1)
     self.assertEqual(len(world.realms), 2)
     self.assertTrue(realm1 in world.realms)
Esempio n. 8
0
selected_province = None
moved_army = None
realm = None
realm_index = 0

if __name__ == '__main__':
    window = pyglet.window.Window(800, 600, 'PyRealm 01')
    
    terrain0 = Terrain("Plain", Color(0.0, 1.0, 0.0))
    
    gamemap = Map()
    gamemap.create(terrain0, 3, 3)
    
    world = World(gamemap)
    
    realm0 = world.create_realm('Askir', 1.0, 0.0, 0.0)
    realm0.add_province(gamemap.get_province(2, 2))
    
    realm1 = world.create_realm('Thalak', 0.0, 0.0, 1.0)
    realm1.add_province(gamemap.get_province(0, 0))
    
    realm = realm0
    print('Realm={0:s}:'.format(realm.name))
    
    view = MapView(gamemap, 50.0, 5.0, 5.0, 15.0)
    
    @window.event
    def on_draw():
        window.clear()
        glLoadIdentity()
        view.draw()