From 3f8cd998224da302c02a29f7fb8d67ae72b254c8 Mon Sep 17 00:00:00 2001 From: Russell Date: Sun, 24 May 2020 04:37:27 +0100 Subject: [PATCH] Display a message when players enter a gang zone --- data/messages.json | 1 + javascript/features/gang_zones/structures/zone.js | 3 +++ javascript/features/gang_zones/zone_data_aggregator.test.js | 2 +- javascript/features/gang_zones/zone_manager.js | 3 +++ 4 files changed, 8 insertions(+), 1 deletion(-) diff --git a/data/messages.json b/data/messages.json index a1d6b4c1c..44be4a029 100644 --- a/data/messages.json +++ b/data/messages.json @@ -215,6 +215,7 @@ "GANG_SETTINGS_USE_PERSONAL_COLOR": "You will now be using your personal color again.", "GANG_SETTINGS_USE_GANG_SKIN": "You will now be using the gang's skin again.", "GANG_SETTINGS_USE_PERSONAL_SKIN": "You will now be using your personal skin again. Use \"/my skin\" to update it.", + "GANG_ZONE_ENTERED": "{%s}* You have entered %s territory: %s", "GANGS_ALREADY_SET": "@error You need to leave your current gang first by using /gang leave.", "GANGS_HEADER": "{B1FC17}Gangs on Las Venturas Playground", "GANGS_NONE_ONLINE": "{B1FC17}There are no gang members on the server right now.", diff --git a/javascript/features/gang_zones/structures/zone.js b/javascript/features/gang_zones/structures/zone.js index 5616be290..58263a2d0 100644 --- a/javascript/features/gang_zones/structures/zone.js +++ b/javascript/features/gang_zones/structures/zone.js @@ -23,6 +23,9 @@ export class Zone { // Gets the ID of the gang who owns this gang zone. get gangId() { return this.zoneGang_.id; } + // Gets the goal of the gang who owns this gang zone. + get gangGoal() { return this.zoneGang_.goal; } + // Gets the name of the gang who owns this gang zone. get gangName() { return this.zoneGang_.name; } diff --git a/javascript/features/gang_zones/zone_data_aggregator.test.js b/javascript/features/gang_zones/zone_data_aggregator.test.js index 2b302cb0b..74d600b74 100644 --- a/javascript/features/gang_zones/zone_data_aggregator.test.js +++ b/javascript/features/gang_zones/zone_data_aggregator.test.js @@ -80,7 +80,7 @@ describe('ZoneDataAggregator', (it, beforeEach, afterEach) => { const baGang = aggregator.activeGangs.get(MockZoneDatabase.BA); assert.equal(baGang.name, 'BA Hooligans'); - assert.deepEqual(baGang.color, Color.fromRGB(20, 147, 170)); + assert.deepEqual(baGang.color, Color.fromRGBA(255, 20, 147, 170)); aggregator.onGangSettingUpdated({ id: MockZoneDatabase.BA, diff --git a/javascript/features/gang_zones/zone_manager.js b/javascript/features/gang_zones/zone_manager.js index 8d1997372..de3a4f329 100644 --- a/javascript/features/gang_zones/zone_manager.js +++ b/javascript/features/gang_zones/zone_manager.js @@ -53,6 +53,9 @@ export class ZoneManager { // --------------------------------------------------------------------------------------------- onPlayerEnterZone(player, zone) { + player.sendMessage( + Message.GANG_ZONE_ENTERED, zone.color.toHexRGB(), zone.gangName, zone.gangGoal); + if (!server.isTest()) console.log(`[Zone][Enter][${zone.gangName}] : [${player.name}]`); }