[build] downgrade lime,openfl (perfomance); remove yield
This commit is contained in:
@@ -15,7 +15,7 @@ class DestroyTeamBonus extends BaseBonus {
|
||||
override public function apply(playerId:PlayerId, game:IGame, engine:IEngine):Void {
|
||||
var tank:Tank = engine.getEntity(game.getPlayer(playerId).tankId);
|
||||
if (tank != null) {
|
||||
for (t in engine.iterTanks(tank.playerId.team.alienTank())) {
|
||||
for (t in engine.getTanks(tank.playerId.team.alienTank())) {
|
||||
game.gameEventSignal.emit(DESTROY(TANK(t.id, {tankId: tank.id})));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -12,7 +12,7 @@ import ru.m.tankz.engine.IEngine;
|
||||
import ru.m.tankz.map.Grid;
|
||||
import ru.m.tankz.map.LevelMap;
|
||||
|
||||
@:yield @:dispatcher(EngineListener) class Engine implements IEngine {
|
||||
@:dispatcher(EngineListener) class Engine implements IEngine {
|
||||
|
||||
public var config(default, default):Config;
|
||||
public var map(default, null):LevelMap;
|
||||
@@ -157,12 +157,14 @@ import ru.m.tankz.map.LevelMap;
|
||||
moveSignal.dispose();
|
||||
}
|
||||
|
||||
public function iterTanks(filter:Tank->Bool):Iterator<Tank> {
|
||||
public function getTanks(filter:Tank->Bool):Array<Tank> {
|
||||
var result = [];
|
||||
for (entity in entities) {
|
||||
var tank:Tank = EntityTypeResolver.as(entity, Tank);
|
||||
if (tank != null && filter(tank)) {
|
||||
@yield return tank;
|
||||
result.push(tank);
|
||||
}
|
||||
}
|
||||
return result;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -33,7 +33,7 @@ interface IEngine {
|
||||
|
||||
public function update():Void;
|
||||
|
||||
public function iterTanks(filter:Tank->Bool):Iterator<Tank>;
|
||||
public function getTanks(filter:Tank->Bool):Array<Tank>;
|
||||
|
||||
public function connect(listener:EngineListener):Void;
|
||||
|
||||
|
||||
@@ -61,7 +61,7 @@ class GameUtil {
|
||||
|
||||
public static function freezeTeam(game:IGame, engine:IEngine, teamId:TeamId, duration:Float):Void {
|
||||
game.getTeam(teamId).freezing = true;
|
||||
for (tank in engine.iterTanks(teamId.teamTank())) {
|
||||
for (tank in engine.getTanks(teamId.teamTank())) {
|
||||
tank.freezing = true;
|
||||
tank.stop();
|
||||
game.gameEventSignal.emit(STOP(TANK(tank.id)));
|
||||
@@ -69,7 +69,7 @@ class GameUtil {
|
||||
}
|
||||
game.ticker.emit(function() {
|
||||
game.getTeam(teamId).freezing = false;
|
||||
for (tank in engine.iterTanks(teamId.teamTank())) {
|
||||
for (tank in engine.getTanks(teamId.teamTank())) {
|
||||
tank.freezing = false;
|
||||
game.gameEventSignal.emit(CHANGE(TANK_FREEZE(tank.id, tank.freezing)));
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user