From dd2f585c0e84a4598c2e0a937b2b53d39bf6206d Mon Sep 17 00:00:00 2001 From: ErfanFaravani Date: Mon, 3 Feb 2020 08:48:14 +0330 Subject: [PATCH] changes to model.py base on clientv5.1 doc --- model.py | 83 +++++++++++++++++++++++++++++++++++++++----------------- 1 file changed, 58 insertions(+), 25 deletions(-) diff --git a/model.py b/model.py index 8d8e948..47ba343 100644 --- a/model.py +++ b/model.py @@ -2,9 +2,9 @@ class Map: - def __init__(self, row_count, column_count, paths, kings, cells): - self.row_count = row_count - self.column_count = column_count + def __init__(self, row_num, column_num, paths, kings, cells): + self.row_num = row_num + self.column_num = column_num self.paths = paths self.units = [] self.kings = kings @@ -31,14 +31,31 @@ def add_unit_in_cell(self, row, column, unit): class Player: def __init__(self, player_id, king): self.player_id = player_id + self.king = king self.deck = None self.hand = [] - self.spells = [] self.ap = 0 + self.paths_from_player = [] + self.path_to_friend = None + self.cast_area_spell = None + self.cast_unit_spell = None + self.duplicate_units = None + self.hasted_units = None + self.units = [] # alive units + self.played_units = [] # units that played last turn + self.died_units = [] + self.range_upgraded_unit = None # unit that last turn the player upgraded range of it + self.damage_upgraded_unit = None # unit that last turn the player upgraded damage of it + + # deleted fields + self.spells = [] self.upgrade_tokens = 0 - self.king = king - self.units = [] - self.dead_units = [] + + def is_alive(self): + return self.king.is_alive + + def get_hp(self): + return self.king.hp def __str__(self): return "".format(self.path_id, ["({}, {})".format(cell.row, cell.col) for cell in self.cells]) + "cells: {}>".format(self.id, ["({}, {})".format(cell.row, cell.col) for cell in self.cells]) class Deck: @@ -162,23 +190,28 @@ def __init__(self): class BaseUnit: - def __init__(self, type_id, max_hp, base_attack, base_range, target, is_flying, is_multiple): + def __init__(self, type_id, max_hp, base_attack, base_range, target_type, is_flying, is_multiple): self.type_id = type_id self.max_hp = max_hp + self.ap = 0 + self.attack = 0 self.base_attack = base_attack self.base_range = base_range - self.target = target self.is_flying = is_flying self.is_multiple = is_multiple + self.target_type = target_type class King: - def __init__(self, target_id, center=None, hp=0, attack=0, range=0): + def __init__(self, target, center=None, hp=0, attack=0, range=0): self.center = center self.hp = hp self.attack = attack self.range = range - self.target_id = target_id + self.target = target + self.target_cell = None + self.is_alive = True + self.player_id = 0 class Message: