[pyar] [ANN] Age of Empyres
Jose Luis Zanotti
joseluiszanotti en gmail.com
Vie Nov 20 14:40:20 ART 2015
nahhhhhhhhhhhhhhh la pucha...
me cambian las cosas sobre la marcha :P
Tengo el presentimiento que con los fixes se crashea mi bot
vamos a ver si pulo un poco el code el finde.
Gracias por el tan buen trabajo!
On 20/11/2015 12:48 p. m., Joaquín Sorianello wrote:
> 2015-11-20 9:17 GMT-03:00 Santiago Avendaño <santiavenda2 en gmail.com>:
>> No se si es contra las reglas del juego pero bue, prefiero que nos
>> divirtamos jugando a que nos aburramos debugueando.
> No va contra las reglas. La parte mas divertida, es la colaboración
> entre jugadores.
>
>> El siguiente código debería chequear que un movimiento sea válido (o al
>> menos usando esta validación mi código dejo de crashear por un movimiento
>> inválido)
>> def valid_movement(x, y, direction, game_map):
>> new_pos = x + direction.x, y + direction.y
>> if new_pos in game_map:
>> tile = game_map[new_pos]
>> return tile.enemies_count == 0 and not tile.enemy_hq and
>> tile.reachable and not tile.own_hq
>> else:
>> return False
>
> Hay varias cosas, que no están documentadas, pero están implementadas:
>
> Tiles, Unidades y Direcciones, son vectores, y tienen implemtado __add__
>
> Entonces podes hacer:
>
> def can_do_step(unit, direction, game_map):
> target = unit + direction
> try:
> validate_target(target) # Valida que esté en el mapa y sea
> reachable si no lanza InvalidActionException
> target_tile = game_map[target.as_tuple()]
> if target_tile.enemies_count == 0: # etc...
> return True
>
> except invalidActionException:
> return False
>
>
>
> Saludos!
>
>
>
>
>
More information about the pyar
mailing list