def add_object(self, a_object): pos = Pos() if type(a_object) is list: for i in a_object: pos = i.get_pos() self.__cells[pos.get_row() - 1][pos.get_col() - 1].set_occupied_object(i) else: pos = a_object.get_pos() if pos is not None: self.__cells[pos.get_row() - 1][pos.get_col() - 1].set_occupied_object(a_object)
class Soldier(): def __init__(self): self._health = 100 self.__num_elixirs = 2 self.__pos = Pos() self.__keys = [] def get_health(self): return self._health def lose_health(self): self._health -= 10 return self._health <= 0 def recover(self, healing_power): total_health = healing_power + self._health if (total_health >= 100): self._health = 100 else: self._health = total_health def get_pos(self): return self.__pos def set_pos(self, row, col): self.__pos.set_pos(row, col) def move(self, row, col): self.set_pos(row, col) def get_keys(self): return self.__keys def add_key(self, key): self.__keys.append(key) def get_num_elixirs(self): return self.__num_elixirs def add_elixir(self): self.__num_elixirs += 1 def use_elixir(self): self.recover(random.randint(0, 5) + 15) self.__num_elixirs -= 1 def display_information(self): str_key = [str(x) for x in self.__keys] print("Health: ", self._health, ".") print("Position (row, column): (", self.__pos.get_row(), ", ", self.__pos.get_col(), ").") print("Keys: [" + ", ".join(str_key) + "].") print("Elixirs: ", self.__num_elixirs, ".") def display_symbol(self): print("S", end="")
class Soldier(): def __init__(self): self._health = 100 self._num_elixirs = 2 self._pos = Pos() self._keys = [] def get_health(self): return self._health def lose_health(self): self._health -= 10 return self._health <= 0 def recover(self, healing_power): total_health = healing_power + self._health self._health = 100 if total_health >= 100 else total_health def get_pos(self): return self._pos def set_pos(self, row, column): self._pos.set_pos(row, column) def move(self, row, column): self._pos.set_pos(row, column) def get_keys(self): return self._keys def add_key(self, key): self._keys.append(key) def get_num_elixirs(self): return self._num_elixirs def add_elixir(self): self._num_elixirs += 1 def use_elixir(self): self.recover(random.randint(15, 21)) self._num_elixirs -= 1 def display_information(self): print("Health:", self._health) print("Position (row, column): (", self._pos.get_row(), " ", self._pos.get_column(), ")", sep='') print("Keys:", self._keys) print("Elixirs: %d" % self._num_elixirs) def display_symbol(self): print("S", end='')
class Soldier(): def __init__(self): self._health = 100 self._num_elixirs = 2 self._pos = Pos() self._keys = set() def get_health(self): return self._health def lose_health(self): self._health -= 10 return self._health <= 0 def recover(self, healing_power): ## Soldier's health cannot exceed capacity. total_health = healing_power + self._health self._health = 100 if total_health >= 100 else total_health def get_pos(self): return self._pos def set_pos(self, row, column): self._pos.set_pos(row, column) def move(self, row, column): self.set_pos(row, column) def get_keys(self): return self._keys def add_key(self, key): self._keys.add(key) def get_num_elixirs(self): return self._num_elixirs def add_elixir(self): self._num_elixirs += 1 def use_elixir(self): self.recover(random.randint(15, 20)) self._num_elixirs -= 1 def display_information(self): print("Health: %d." % (self._health)) print("Position (row, column): (%d, %d)." % (self._pos.get_row(self), self._pos.get_column(self))) print('Keys: [', end='') print(*self._keys, sep=', ', end='].\n') print("Elixirs: %d." % (self._num_elixirs)) def display_symbol(self): print('S', end='')
class Soldier(): def __init__(self): self.health = 100 self.num_elixirs = 2 self.pos = Pos() self.keys = [] def get_health(self): return self.health def lose_health(self): self.health -= 10 return self.health <= 0 def recover(self, healing_power): total_health = healing_power + self.health self.health = 100 if total_health >= 100 else total_health def get_pos(self): return self.pos def set_pos(self, row, column): self.pos.set_pos(row, column) def move(self, row, column): self.set_pos(row, column) def get_keys(self): return self.keys def add_key(self, key): self.keys.append(key) def get_num_elixirs(self): return self.num_elixirs def add_elixir(self): self.num_elixirs += 1 def use_elixir(self): self.recover(random.randint(0, 5) + 15) self.num_elixirs -= 1 def display_information(self): print("Health: {}.".format(self.health)) print("Position (row, column): ({}, {}).".format(self.pos.get_row(), self.pos.get_column())) print("Keys: " + str(sorted(set(self.keys))) + ".") print("Elixirs: {}.".format(self.num_elixirs)) def display_symbol(self): print("S", end="")