def create(at, big=True): entity_id = entityid.create() image, frames = random.choice(big_explosions if big else small_explosions) render = explosion_entity['render'] render['image_name'] = image render['frames'] = frames explosion_entity['spatial']['position'] = at manager.create_entity(entity_id, explosion_entity) return entity_id
def update(dt): for entity_id, state in spawners.iteritems(): timeout = state.timeout timeout -= dt if timeout < 0: spawn_id = entityid.create() manager.create_entity(spawn_id, state.entity_data) spatial.copy_data(entity_id, spawn_id) state.count += 1 timeout = state.cooldown state.timeout = timeout
def create(): gui_id = entityid.create() manager.create_entity(gui_id, gui) cloud_id = _create_entity('clouds') cloud_id = _create_entity('clouds2') cloud_id = _create_entity('clouds3') score_label_id = entityid.create() manager.create_entity(score_label_id, score_label) global score_id score_id = entityid.create() manager.create_entity(score_id, score) global shield_id shield_label_id = _create_entity('shield_label') shield_id = _create_entity('shield') global weapon_id weapon_label_id = _create_entity('weapon_label') weapon_id = _create_entity('weapon') global progress_id progress_label_id = _create_entity('progress_label') progress_id = _create_entity('progress')
def create_missile(pos, angle, speed, image, owner, player_only): bullet_id = entityid.create() parameters = { 'spatial': { 'position': pos, 'angle': angle, }, 'render': { 'image_name': image }, 'missile_ai': { 'speed': speed, 'owner': owner, }, 'collider': { 'radius': 4, 'world': 'projectiles', 'player_only': player_only, }, } manager.create_entity(bullet_id, parameters) return bullet_id
def wave_01(): armada = entityid.create() global level while True: level_spawner = spawners.generate_enemies(level) manager.create_entity(armada, level_spawner) yield lambda: spawner.spawn_count(armada) > level - 1 manager.destroy_entity(armada) yield lambda: not counter.get_count() level_spawner = spawners.generate_kamikaze(level) manager.create_entity(armada, level_spawner) yield lambda: spawner.spawn_count(armada) > level - 1 manager.destroy_entity(armada) yield lambda: not counter.get_count() level += 1
def spawn_missilesplash(position): splash_id = entityid.create() missile_splash['spatial']['position'] = position missile_splash['aoe']['data'] = position manager.create_entity(splash_id, missile_splash)
def _create_entity(dict_name): entity_id = entityid.create() data = globals()[dict_name] manager.create_entity(entity_id, data) return entity_id