[common] fix null color
This commit is contained in:
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "tankz",
|
"name": "tankz",
|
||||||
"version": "0.13.0",
|
"version": "0.13.1",
|
||||||
"private": true,
|
"private": true,
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"dateformat": "^3.0.3",
|
"dateformat": "^3.0.3",
|
||||||
|
|||||||
@@ -75,7 +75,7 @@ typedef PlayerConfig = {
|
|||||||
@:optional var bonus:Float;
|
@:optional var bonus:Float;
|
||||||
@:optional var protect:Float;
|
@:optional var protect:Float;
|
||||||
@:optional var life:Int;
|
@:optional var life:Int;
|
||||||
@:optional var color:Color;
|
@:optional var color:Null<Int>;
|
||||||
@:optional var control:String;
|
@:optional var control:String;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -89,7 +89,7 @@ typedef TeamConfig = {
|
|||||||
@:optional var eagle:EagleConfig;
|
@:optional var eagle:EagleConfig;
|
||||||
@:optional var life:Int;
|
@:optional var life:Int;
|
||||||
@:optional var spawnInterval:Int;
|
@:optional var spawnInterval:Int;
|
||||||
@:optional var color:Color;
|
@:optional var color:Null<Int>;
|
||||||
}
|
}
|
||||||
|
|
||||||
typedef GamePreset = {
|
typedef GamePreset = {
|
||||||
@@ -108,7 +108,7 @@ typedef LevelConfig = {
|
|||||||
typedef PlayerControl = {
|
typedef PlayerControl = {
|
||||||
var playerId:PlayerId;
|
var playerId:PlayerId;
|
||||||
var control:String;
|
var control:String;
|
||||||
@:optional var color:Color;
|
@:optional var color:Null<Int>;
|
||||||
}
|
}
|
||||||
|
|
||||||
typedef ControlPreset = {
|
typedef ControlPreset = {
|
||||||
@@ -235,7 +235,7 @@ class Config {
|
|||||||
|
|
||||||
public function getColor(playerId:PlayerId):Color {
|
public function getColor(playerId:PlayerId):Color {
|
||||||
var player = getPlayer(playerId);
|
var player = getPlayer(playerId);
|
||||||
if (player != null && !player.color.zero) {
|
if (player != null && player.color != null) {
|
||||||
return player.color;
|
return player.color;
|
||||||
}
|
}
|
||||||
var team = getTeam(playerId.team);
|
var team = getTeam(playerId.team);
|
||||||
|
|||||||
@@ -44,11 +44,11 @@ class EntityBuilder {
|
|||||||
return eagle;
|
return eagle;
|
||||||
}
|
}
|
||||||
|
|
||||||
public function buildTank(point:EntityPoint, playerId:PlayerId, type:TankType, color:Color, bonusOff:Bool = false):Tank {
|
public function buildTank(point:EntityPoint, playerId:PlayerId, type:TankType, color:Null<Color>, bonusOff:Bool = false):Tank {
|
||||||
var playerConfig = config.getPlayer(playerId);
|
var playerConfig = config.getPlayer(playerId);
|
||||||
var tankConfig = config.getTank(type);
|
var tankConfig = config.getTank(type);
|
||||||
var tank = new Tank(++entityId, buildRect(point, tankConfig.width, tankConfig.height), playerId, tankConfig);
|
var tank = new Tank(++entityId, buildRect(point, tankConfig.width, tankConfig.height), playerId, tankConfig);
|
||||||
tank.color = color.zero ? config.getColor(playerId) : color;
|
tank.color = color == null ? config.getColor(playerId) : color;
|
||||||
if (!bonusOff) {
|
if (!bonusOff) {
|
||||||
tank.bonus = Math.random() < playerConfig.bonus;
|
tank.bonus = Math.random() < playerConfig.bonus;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -86,7 +86,7 @@ import ru.m.tankz.Type;
|
|||||||
for (team in teams.iterator()) {
|
for (team in teams.iterator()) {
|
||||||
for (player in team.players.iterator()) {
|
for (player in team.players.iterator()) {
|
||||||
var playerControl = controlsById.get(player.id);
|
var playerControl = controlsById.get(player.id);
|
||||||
if (playerControl != null && !playerControl.color.zero) {
|
if (playerControl != null && playerControl.color != null) {
|
||||||
player.state.color = playerControl.color;
|
player.state.color = playerControl.color;
|
||||||
}
|
}
|
||||||
var controlType:Controller = AController.fromString(playerControl != null ? playerControl.control : player.config.control);
|
var controlType:Controller = AController.fromString(playerControl != null ? playerControl.control : player.config.control);
|
||||||
|
|||||||
Reference in New Issue
Block a user