[client] rename frame => view

This commit is contained in:
2019-03-21 20:26:28 +03:00
parent 0b17fbf804
commit 4d8de90419
43 changed files with 119 additions and 114 deletions

View File

@@ -0,0 +1,58 @@
package ru.m.tankz.view.common;
import haxework.gui.ButtonView;
import haxework.gui.GroupView;
import haxework.resources.IResources;
import ru.m.tankz.bundle.IConfigBundle;
import ru.m.tankz.config.Config;
import ru.m.tankz.control.Control.Controller;
import ru.m.tankz.game.GameState;
import ru.m.tankz.Type;
class LevelFrame extends GroupView {
public var gameType(default, set):GameType;
public var preset(default, set):GamePreset;
public var level(default, set):Int;
private var config(default, null):Config;
@:provide var configBundle:IConfigBundle;
@:provide var state:GameState;
@:provide var resources:IResources;
private function set_gameType(value:GameType):GameType {
if (gameType != value || true) { // ToDo:
gameType = value;
config = configBundle.get(gameType);
preset = config.presets[0];
}
return gameType;
}
private function set_preset(value:GamePreset):GamePreset {
if (preset != value || true) { // ToDo:
preset = value;
state = new GameState(gameType, preset.id);
for (team in value.teams) {
for (player in team.players) {
var playerId = new PlayerId(team.id, player.index);
var controller = player.human ? HUMAN(player.index) : NONE;
state.players.push(new PlayerState(playerId, controller, player.life));
}
}
}
return preset;
}
private function set_level(value:Int):Int {
state.level = value;
return state.level;
}
private function levelViewFactory(index:Int, level:Int):ButtonView {
var view = new ButtonView();
view.text = '${level}';
resources.skin.bind("button.level", view, "skin");
return view;
}
}