コード例 #1
0
ファイル: location.py プロジェクト: hcourt/diplomacy
#!/usr/bin/python

import pdata
pdb=pdata.pdata()

def error(str):
    print ("ERROR: "+str)
    return
    
class Country(object):
    def __init__(self, name, player):
        self.name=name
        self.player=player
        self.provinces=[]
        self.province_names=[]
        self.unit_locations=[]
        self.surrendered=False
        self.dislodged_units=[]
    def surrender(self):
        if (self.surrendered==False):
            self.surrendered=True
            print(self.name+" (Player "+str(player)+") has surrendered.")
        else:
            error(self.name+" (Player "+str(player)+") has already surrendered.")
        return
    def start_provinces(self):
        if (self.name=="Austria"):
            self.provinces=[
                Province("Bohemia",False,self),
                Province("Budapest",True,self,"Army"),
                Province("Galicia",False,self),
コード例 #2
0
ファイル: adjudicator.py プロジェクト: hcourt/diplomacy
#!/usr/bin/python
import pdata

pdata = pdata.pdata()


def a_print(str):
    print("ADJUDICATOR: " + str)
    return


class Adjudicator(object):
    def __init__(self):
        self.countries = None
        self.retreat_units = []  # a list of units to retreat
        self.retreat_players = []  # a list of players who must retreat
        self.build_surplus = 0  # the surplus or debt of supply centers
        self.build_players = []  # a list of players who must resolve their surplus or deficit
        self.conflict_provinces = []
        return

    def last(self, list, reverse_index=1):
        if len(list) >= reverse_index:
            return list[-reverse_index]
        else:
            return None

    def get_province(self, name):
        for p in self.get_all_provinces():
            if p.name == name:
                return p