[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

@@ -1,6 +1,6 @@
{ {
"name": "tankz", "name": "tankz",
"version": "0.8.4", "version": "0.8.5",
"private": true, "private": true,
"devDependencies": { "devDependencies": {
"dateformat": "^3.0.3", "dateformat": "^3.0.3",

View File

@@ -1,16 +1,10 @@
package ru.m.tankz; package ru.m.tankz;
import ru.m.tankz.view.ClientView;
import flash.Lib; import flash.Lib;
import haxework.animate.Animate; import haxework.animate.Animate;
import ru.m.tankz.frame.StartFrame;
import flash.ui.Keyboard;
import flash.events.KeyboardEvent;
import flash.text.Font;
import haxework.gui.frame.FrameSwitcher;
import haxework.gui.Root; import haxework.gui.Root;
import haxework.log.TraceLogger; import haxework.log.TraceLogger;
import haxework.provider.Provider;
import haxework.resources.IResources;
#if flash import haxework.log.JSLogger; #end #if flash import haxework.log.JSLogger; #end
#if debug import haxework.log.SocketLogger; #end #if debug import haxework.log.SocketLogger; #end
@@ -40,26 +34,3 @@ class Client {
view.launch(); view.launch();
} }
} }
@:template class ClientView extends FrameSwitcher {
private static inline var TAG = 'Tankz';
@:provide var resources:IResources;
public function init():Void {
var font:Font = Font.enumerateFonts()[0];
resources.text.put('font', 'Bookman Old Style');
resources.text.put('version', 'v${Const.VERSION} (${Const.BUILD})');
Provider.set(FrameSwitcher, this);
}
public function launch():Void {
content.stage.stageFocusRect = false;
content.stage.addEventListener(KeyboardEvent.KEY_UP, function(event:KeyboardEvent):Void {
if (event.keyCode == Keyboard.ESCAPE) {
change(StartFrame.ID);
}
});
change(StartFrame.ID);
}
}

View File

@@ -1,25 +0,0 @@
---
$type: haxework.gui.frame.FrameSwitcher
geometry.size.stretch: true
skinId: dark
views:
- id: start
$type: ru.m.tankz.frame.StartFrame
# classic
- id: classic.level
$type: ru.m.tankz.frame.classic.ClassicLevelFrame
- id: classic.game
$type: ru.m.tankz.frame.classic.ClassicGameFrame
# dota
- id: dota.level
$type: ru.m.tankz.frame.dota.DotaLevelFrame
- id: dota.game
$type: ru.m.tankz.frame.dota.DotaGameFrame
# result
- id: result
$type: ru.m.tankz.frame.ResultFrame
# - id: network
# $type: ru.m.tankz.frame.NetworkFrame
# settings
- id: settings
$type: ru.m.tankz.frame.SettingsFrame

View File

@@ -22,7 +22,6 @@ import flash.Lib;
import js.Browser; import js.Browser;
#end #end
class Init { class Init {
private static function getHost():String { private static function getHost():String {

View File

@@ -1,10 +1,10 @@
package ru.m.tankz; package ru.m.tankz;
import haxework.gui.layout.Layout;
import haxework.color.ColorUtil; import haxework.color.ColorUtil;
import haxework.gui.core.Geometry; import haxework.gui.core.Geometry;
import haxework.gui.core.HAlign; import haxework.gui.core.HAlign;
import haxework.gui.core.VAlign; import haxework.gui.core.VAlign;
import haxework.gui.layout.Layout;
import haxework.gui.skin.Skin; import haxework.gui.skin.Skin;
import haxework.resources.IResources; import haxework.resources.IResources;
import openfl.Assets; import openfl.Assets;
@@ -33,12 +33,12 @@ class Style {
Skin.color(0x000000, 0.1), Skin.color(0x000000, 0.1),
Skin.border(lightColor, 1, 2), Skin.border(lightColor, 1, 2),
Skin.text(textColor, 22, fontFamily), Skin.text(textColor, 22, fontFamily),
Skin.size(200, 38), Skin.geometry(new Geometry().setSize(200, 38).setMargin([0, 0, 0, 30])),
]); ]);
resources.skin.put("button", [ resources.skin.put("button", [
Skin.buttonColor(lightColor), Skin.buttonColor(lightColor),
Skin.text(textColor, 18, fontFamily), Skin.text(textColor, 18, fontFamily),
Skin.size(250, 50) Skin.size(250, 50),
]); ]);
resources.skin.put("text.box", [ resources.skin.put("text.box", [
Skin.color(0x000000, 0.1), Skin.color(0x000000, 0.1),

View File

@@ -0,0 +1,31 @@
package ru.m.tankz.view;
import flash.events.KeyboardEvent;
import flash.text.Font;
import flash.ui.Keyboard;
import haxework.gui.frame.FrameSwitcher;
import haxework.resources.IResources;
@:template class ClientView extends FrameSwitcher {
private static inline var TAG = 'Tankz';
@:provide var resources:IResources;
@:provide var switcher:FrameSwitcher;
public function init():Void {
var font:Font = Font.enumerateFonts()[0];
resources.text.put('font', 'Bookman Old Style');
resources.text.put('version', 'v${Const.VERSION} (${Const.BUILD})');
switcher = this;
}
public function launch():Void {
content.stage.stageFocusRect = false;
content.stage.addEventListener(KeyboardEvent.KEY_UP, function(event:KeyboardEvent):Void {
if (event.keyCode == Keyboard.ESCAPE) {
change(StartFrame.ID);
}
});
change(StartFrame.ID);
}
}

View File

@@ -0,0 +1,25 @@
---
$type: haxework.gui.frame.FrameSwitcher
geometry.size.stretch: true
skinId: dark
views:
- id: start
$type: ru.m.tankz.view.StartFrame
# classic
- id: classic.level
$type: ru.m.tankz.view.classic.ClassicLevelFrame
- id: classic.game
$type: ru.m.tankz.view.classic.ClassicGameFrame
# dota
- id: dota.level
$type: ru.m.tankz.view.dota.DotaLevelFrame
- id: dota.game
$type: ru.m.tankz.view.dota.DotaGameFrame
# result
- id: result
$type: ru.m.tankz.view.ResultFrame
# - id: network
# $type: ru.m.tankz.view.NetworkFrame
# settings
- id: settings
$type: ru.m.tankz.view.SettingsFrame

View File

@@ -1,4 +1,4 @@
package ru.m.tankz.frame; package ru.m.tankz.view;
import haxework.gui.ButtonView; import haxework.gui.ButtonView;
import haxework.gui.frame.IFrameSwitcher; import haxework.gui.frame.IFrameSwitcher;

View File

@@ -44,7 +44,7 @@ views:
text: Create text: Create
- id: gameList - id: gameList
$type: haxework.gui.list.VListView<ru.m.tankz.proto.core.GameInfoProto> $type: haxework.gui.list.VListView<ru.m.tankz.proto.core.GameInfoProto>
factory: "@class:ru.m.tankz.frame.network.GameItemView" factory: "@class:ru.m.tankz.view.network.GameItemView"
pWidth: 100 pWidth: 100
pHeight: 100 pHeight: 100
paddings: 10 paddings: 10
@@ -74,7 +74,7 @@ views:
text: Leave text: Leave
- id: userList - id: userList
$type: haxework.gui.list.VListView<ru.m.tankz.proto.core.UserProto> $type: haxework.gui.list.VListView<ru.m.tankz.proto.core.UserProto>
factory: "@class:ru.m.tankz.frame.network.UserItemView" factory: "@class:ru.m.tankz.view.network.UserItemView"
pWidth: 100 pWidth: 100
pHeight: 100 pHeight: 100
paddings: 10 paddings: 10

View File

@@ -1,4 +1,4 @@
package ru.m.tankz.frame; package ru.m.tankz.view;
import haxework.gui.LabelView; import haxework.gui.LabelView;
import haxework.gui.ButtonView; import haxework.gui.ButtonView;
@@ -6,9 +6,9 @@ import haxework.gui.DataView;
import haxework.gui.frame.FrameSwitcher; import haxework.gui.frame.FrameSwitcher;
import haxework.gui.VGroupView; import haxework.gui.VGroupView;
import ru.m.tankz.control.Control; import ru.m.tankz.control.Control;
import ru.m.tankz.frame.classic.ClassicGameFrame; import ru.m.tankz.view.classic.ClassicGameFrame;
import ru.m.tankz.frame.common.LifeView; import ru.m.tankz.view.common.LifeView;
import ru.m.tankz.frame.dota.DotaGameFrame; import ru.m.tankz.view.dota.DotaGameFrame;
import ru.m.tankz.game.GameState; import ru.m.tankz.game.GameState;
import ru.m.tankz.preset.ClassicGame; import ru.m.tankz.preset.ClassicGame;
import ru.m.tankz.preset.DotaGame; import ru.m.tankz.preset.DotaGame;

View File

@@ -1,4 +1,4 @@
package ru.m.tankz.frame; package ru.m.tankz.view;
import haxework.gui.frame.FrameSwitcher; import haxework.gui.frame.FrameSwitcher;
import haxework.gui.ButtonView; import haxework.gui.ButtonView;

View File

@@ -9,9 +9,9 @@ views:
- $type: haxework.gui.HGroupView - $type: haxework.gui.HGroupView
layout.margin: 20 layout.margin: 20
views: views:
- $type: ru.m.tankz.frame.settings.SettingsEditor - $type: ru.m.tankz.view.settings.SettingsEditor
controlIndex: 0 controlIndex: 0
- $type: ru.m.tankz.frame.settings.SettingsEditor - $type: ru.m.tankz.view.settings.SettingsEditor
controlIndex: 1 controlIndex: 1
- $type: haxework.gui.HGroupView - $type: haxework.gui.HGroupView
skinId: panel skinId: panel

View File

@@ -1,7 +1,7 @@
package ru.m.tankz.frame; package ru.m.tankz.view;
import ru.m.tankz.frame.classic.ClassicLevelFrame; import ru.m.tankz.view.classic.ClassicLevelFrame;
import ru.m.tankz.frame.dota.DotaLevelFrame; import ru.m.tankz.view.dota.DotaLevelFrame;
import haxework.gui.ButtonView; import haxework.gui.ButtonView;
import haxework.gui.frame.FrameSwitcher; import haxework.gui.frame.FrameSwitcher;
import haxework.gui.VGroupView; import haxework.gui.VGroupView;

View File

@@ -2,11 +2,11 @@
views: views:
- $type: haxework.gui.VGroupView - $type: haxework.gui.VGroupView
skinId: container skinId: container
layout.margin: 5 layout.margin: 10
views: views:
- $type: haxework.gui.ImageView - $type: haxework.gui.ImageView
image: $asset:image:resources/image/ui/logo.png image: $asset:image:resources/image/ui/logo.png
geometry.margin.bottom: 15 geometry.margin.bottom: 30
- id: classic - id: classic
$type: haxework.gui.ButtonView $type: haxework.gui.ButtonView
skinId: button skinId: button
@@ -34,5 +34,6 @@ views:
- $type: haxework.gui.SpriteView - $type: haxework.gui.SpriteView
geometry.size.width: 100% geometry.size.width: 100%
- $type: haxework.gui.LabelView - $type: haxework.gui.LabelView
skinId: text geometry.padding: [20, 5]
skinId: text.box
text: $r:text:version text: $r:text:version

View File

@@ -1,8 +1,8 @@
package ru.m.tankz.frame.classic; package ru.m.tankz.view.classic;
import ru.m.tankz.frame.common.IGamePanel; import ru.m.tankz.view.common.IGamePanel;
import ru.m.tankz.render.Render; import ru.m.tankz.render.Render;
import ru.m.tankz.frame.common.GameFrame; import ru.m.tankz.view.common.GameFrame;
@:template class ClassicGameFrame extends GameFrame { @:template class ClassicGameFrame extends GameFrame {
public static inline var ID = "classic.game"; public static inline var ID = "classic.game";

View File

@@ -7,4 +7,4 @@ views:
- id: render - id: render
$type: ru.m.tankz.render.Render $type: ru.m.tankz.render.Render
- id: panel - id: panel
$type: ru.m.tankz.frame.classic.ClassicGamePanel $type: ru.m.tankz.view.classic.ClassicGamePanel

View File

@@ -1,9 +1,9 @@
package ru.m.tankz.frame.classic; package ru.m.tankz.view.classic;
import haxework.gui.LabelView; import haxework.gui.LabelView;
import haxework.gui.VGroupView; import haxework.gui.VGroupView;
import ru.m.tankz.frame.common.IGamePanel; import ru.m.tankz.view.common.IGamePanel;
import ru.m.tankz.frame.common.LifeView; import ru.m.tankz.view.common.LifeView;
import ru.m.tankz.game.Game; import ru.m.tankz.game.Game;
import ru.m.tankz.preset.ClassicGame; import ru.m.tankz.preset.ClassicGame;

View File

@@ -12,14 +12,14 @@ views:
- $type: haxework.gui.SpriteView - $type: haxework.gui.SpriteView
geometry.size.height: 50% geometry.size.height: 50%
- id: bot - id: bot
$type: ru.m.tankz.frame.common.LifeView $type: ru.m.tankz.view.common.LifeView
tank: ba tank: ba
scoreLabel.visible: false scoreLabel.visible: false
- id: player1 - id: player1
$type: ru.m.tankz.frame.common.LifeView $type: ru.m.tankz.view.common.LifeView
tank: pa tank: pa
color: 0xFFFF00 color: 0xFFFF00
- id: player2 - id: player2
$type: ru.m.tankz.frame.common.LifeView $type: ru.m.tankz.view.common.LifeView
tank: pa tank: pa
color: 0x15C040 color: 0x15C040

View File

@@ -1,11 +1,11 @@
package ru.m.tankz.frame.classic; package ru.m.tankz.view.classic;
import haxework.gui.ButtonView; import haxework.gui.ButtonView;
import haxework.gui.DataView; import haxework.gui.DataView;
import haxework.gui.frame.FrameSwitcher; import haxework.gui.frame.FrameSwitcher;
import haxework.gui.ToggleButtonView; import haxework.gui.ToggleButtonView;
import ru.m.tankz.config.Config; import ru.m.tankz.config.Config;
import ru.m.tankz.frame.common.LevelFrame; import ru.m.tankz.view.common.LevelFrame;
import ru.m.tankz.preset.ClassicGame; import ru.m.tankz.preset.ClassicGame;
@:template class ClassicLevelFrame extends LevelFrame { @:template class ClassicLevelFrame extends LevelFrame {

View File

@@ -1,4 +1,4 @@
package ru.m.tankz.frame.common; package ru.m.tankz.view.common;
import ru.m.tankz.game.GameState; import ru.m.tankz.game.GameState;
import flash.events.Event; import flash.events.Event;
@@ -6,7 +6,7 @@ import haxe.ds.Option;
import haxe.Timer; import haxe.Timer;
import haxework.gui.frame.FrameSwitcher; import haxework.gui.frame.FrameSwitcher;
import haxework.gui.GroupView; import haxework.gui.GroupView;
import ru.m.tankz.frame.common.IGamePanel; import ru.m.tankz.view.common.IGamePanel;
import ru.m.tankz.game.Game; import ru.m.tankz.game.Game;
import ru.m.tankz.network.NetworkManager; import ru.m.tankz.network.NetworkManager;
import ru.m.tankz.render.Render; import ru.m.tankz.render.Render;

View File

@@ -1,4 +1,4 @@
package ru.m.tankz.frame.common; package ru.m.tankz.view.common;
import ru.m.tankz.game.Game; import ru.m.tankz.game.Game;
import haxework.gui.IView; import haxework.gui.IView;

View File

@@ -1,4 +1,4 @@
package ru.m.tankz.frame.common; package ru.m.tankz.view.common;
import haxework.gui.ButtonView; import haxework.gui.ButtonView;
import haxework.gui.GroupView; import haxework.gui.GroupView;

View File

@@ -1,4 +1,4 @@
package ru.m.tankz.frame.common; package ru.m.tankz.view.common;
import openfl.Assets; import openfl.Assets;
import haxework.gui.LabelView; import haxework.gui.LabelView;

View File

@@ -1,4 +1,4 @@
package ru.m.tankz.frame.common; package ru.m.tankz.view.common;
import haxework.color.ColorUtil; import haxework.color.ColorUtil;
import haxework.gui.DataView; import haxework.gui.DataView;

View File

@@ -1,7 +1,7 @@
package ru.m.tankz.frame.dota; package ru.m.tankz.view.dota;
import ru.m.tankz.frame.common.GameFrame; import ru.m.tankz.view.common.GameFrame;
import ru.m.tankz.frame.common.IGamePanel; import ru.m.tankz.view.common.IGamePanel;
import ru.m.tankz.render.Render; import ru.m.tankz.render.Render;
@:template class DotaGameFrame extends GameFrame { @:template class DotaGameFrame extends GameFrame {

View File

@@ -5,6 +5,6 @@ views:
layout.margin: 5 layout.margin: 5
views: views:
- id: panel - id: panel
$type: ru.m.tankz.frame.dota.DotaGamePanel $type: ru.m.tankz.view.dota.DotaGamePanel
- id: render - id: render
$type: ru.m.tankz.render.Render $type: ru.m.tankz.render.Render

View File

@@ -1,9 +1,9 @@
package ru.m.tankz.frame.dota; package ru.m.tankz.view.dota;
import haxework.gui.HGroupView; import haxework.gui.HGroupView;
import haxework.gui.LabelView; import haxework.gui.LabelView;
import ru.m.tankz.frame.common.IGamePanel; import ru.m.tankz.view.common.IGamePanel;
import ru.m.tankz.frame.common.LifeView; import ru.m.tankz.view.common.LifeView;
import ru.m.tankz.game.Game; import ru.m.tankz.game.Game;
import ru.m.tankz.preset.DotaGame; import ru.m.tankz.preset.DotaGame;

View File

@@ -3,7 +3,7 @@ geometry.size.width: 100%
layout.margin: 20 layout.margin: 20
views: views:
- id: radiant - id: radiant
$type: ru.m.tankz.frame.common.LifeView $type: ru.m.tankz.view.common.LifeView
tank: bc tank: bc
color: 0xff4422 color: 0xff4422
- $type: haxework.gui.SpriteView - $type: haxework.gui.SpriteView
@@ -16,6 +16,6 @@ views:
- $type: haxework.gui.SpriteView - $type: haxework.gui.SpriteView
geometry.size.width: 25% geometry.size.width: 25%
- id: dire - id: dire
$type: ru.m.tankz.frame.common.LifeView $type: ru.m.tankz.view.common.LifeView
tank: bc tank: bc
color: 0x3284ff color: 0x3284ff

View File

@@ -1,10 +1,10 @@
package ru.m.tankz.frame.dota; package ru.m.tankz.view.dota;
import haxework.gui.ButtonView; import haxework.gui.ButtonView;
import haxework.gui.DataView; import haxework.gui.DataView;
import haxework.gui.frame.FrameSwitcher; import haxework.gui.frame.FrameSwitcher;
import ru.m.tankz.frame.common.LevelFrame; import ru.m.tankz.view.common.LevelFrame;
import ru.m.tankz.frame.common.PlayerView; import ru.m.tankz.view.common.PlayerView;
import ru.m.tankz.game.GameState; import ru.m.tankz.game.GameState;
import ru.m.tankz.preset.DotaGame; import ru.m.tankz.preset.DotaGame;

View File

@@ -1,4 +1,4 @@
package ru.m.tankz.frame.network; package ru.m.tankz.view.network;
import haxework.gui.HGroupView; import haxework.gui.HGroupView;
import haxework.gui.LabelView; import haxework.gui.LabelView;

View File

@@ -1,4 +1,4 @@
package ru.m.tankz.frame.network; package ru.m.tankz.view.network;
import haxework.gui.HGroupView; import haxework.gui.HGroupView;
import haxework.gui.LabelView; import haxework.gui.LabelView;

View File

@@ -1,4 +1,4 @@
package ru.m.tankz.frame.settings; package ru.m.tankz.view.settings;
import haxework.gui.HGroupView; import haxework.gui.HGroupView;
import haxework.gui.LabelView; import haxework.gui.LabelView;

View File

@@ -1,4 +1,4 @@
package ru.m.tankz.frame.settings; package ru.m.tankz.view.settings;
import haxework.gui.ButtonView; import haxework.gui.ButtonView;
import haxework.gui.DataView; import haxework.gui.DataView;

View File

@@ -10,6 +10,9 @@ class HardBotControl extends BotControl {
private var actionTimer:Timer; private var actionTimer:Timer;
override public function onCollision(with:EntityType):Void { override public function onCollision(with:EntityType):Void {
if (tank == null) {
return;
}
switch (with) { switch (with) {
case TANK(t): case TANK(t):
if (t.playerId.team != tank.playerId.team) { if (t.playerId.team != tank.playerId.team) {