[client] rename frame => view
This commit is contained in:
58
src/client/haxe/ru/m/tankz/view/common/LevelFrame.hx
Normal file
58
src/client/haxe/ru/m/tankz/view/common/LevelFrame.hx
Normal 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;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user