warcraft-3-w3ts-utils 0.1.3 → 0.1.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.ts +1 -0
- package/dist/index.js +18 -0
- package/dist/utils/abilities.d.ts +35 -0
- package/dist/utils/abilities.js +125 -0
- package/dist/utils/camera.d.ts +1 -0
- package/dist/utils/camera.js +37 -0
- package/dist/utils/chat-command.d.ts +12 -0
- package/dist/utils/chat-command.js +22 -0
- package/{src/utils/color.ts → dist/utils/color.d.ts} +109 -139
- package/dist/utils/color.js +141 -0
- package/dist/utils/index.d.ts +15 -0
- package/dist/utils/index.js +32 -0
- package/dist/utils/item.d.ts +9 -0
- package/dist/utils/item.js +124 -0
- package/dist/utils/math.d.ts +13 -0
- package/dist/utils/math.js +17 -0
- package/dist/utils/minimapIcons.d.ts +13 -0
- package/dist/utils/minimapIcons.js +27 -0
- package/dist/utils/misc.d.ts +56 -0
- package/dist/utils/misc.js +175 -0
- package/dist/utils/physics.d.ts +52 -0
- package/dist/utils/physics.js +194 -0
- package/dist/utils/players.d.ts +50 -0
- package/dist/utils/players.js +189 -0
- package/dist/utils/point.d.ts +15 -0
- package/dist/utils/point.js +74 -0
- package/dist/utils/quests.d.ts +2 -0
- package/dist/utils/quests.js +30 -0
- package/dist/utils/textTag.d.ts +29 -0
- package/dist/utils/textTag.js +72 -0
- package/dist/utils/timer.d.ts +5 -0
- package/dist/utils/timer.js +16 -0
- package/dist/utils/units.d.ts +26 -0
- package/dist/utils/units.js +81 -0
- package/package.json +12 -3
- package/tsconfig.json +2 -4
- package/src/utils/abilities.ts +0 -161
- package/src/utils/camera.ts +0 -63
- package/src/utils/chat-command.ts +0 -22
- package/src/utils/item.ts +0 -155
- package/src/utils/math.ts +0 -14
- package/src/utils/minimapIcons.ts +0 -34
- package/src/utils/misc.ts +0 -179
- package/src/utils/physics.ts +0 -295
- package/src/utils/players.ts +0 -214
- package/src/utils/point.ts +0 -81
- package/src/utils/quests.ts +0 -38
- package/src/utils/textTag.ts +0 -80
- package/src/utils/timer.ts +0 -14
- package/src/utils/units.ts +0 -109
- package/tsconfig.tsbuildinfo +0 -1
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./utils/index";
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./utils/index"), exports);
|
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLGdEQUE4QiJ9
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { Unit } from "w3ts";
|
|
2
|
+
/**
|
|
3
|
+
* Good for once a unit gets near you, but not good while they are near you since the event is only triggered on entry, not during
|
|
4
|
+
* @param unit
|
|
5
|
+
* @param range
|
|
6
|
+
* @param cb
|
|
7
|
+
* @param config
|
|
8
|
+
* @returns
|
|
9
|
+
*/
|
|
10
|
+
export declare function unitGetsNearThisUnit(unit: Unit, range: number, cb: (u: Unit) => void, config?: {
|
|
11
|
+
uniqueUnitsOnly: boolean;
|
|
12
|
+
filter?: boolexpr | (() => boolean);
|
|
13
|
+
onDestroy?: (unitsEffected: Unit[]) => void;
|
|
14
|
+
}): {
|
|
15
|
+
cleanupUnitGetsNearThisUnit: (delay?: number) => void;
|
|
16
|
+
clearUniqueUnits: () => void;
|
|
17
|
+
};
|
|
18
|
+
/**
|
|
19
|
+
*
|
|
20
|
+
* @param cb
|
|
21
|
+
* @param abilityId
|
|
22
|
+
* @param dummyLifeTime Maybe be necessary to have a long lifetime so spells like chain lightning will have time to bounce to all targets
|
|
23
|
+
* @param owner
|
|
24
|
+
*/
|
|
25
|
+
/**
|
|
26
|
+
* Creates a trigger to monitor when a unit is attacked
|
|
27
|
+
*
|
|
28
|
+
* We could also have all functions execute in this single trigger's context instead of creating new triggers each time the function is used.
|
|
29
|
+
* @param cb
|
|
30
|
+
* @param config
|
|
31
|
+
*/
|
|
32
|
+
export declare function onUnitAttacked(cb: (attacker: Unit, victim: Unit) => void, config: {
|
|
33
|
+
attackerCooldown?: boolean;
|
|
34
|
+
procChance?: number;
|
|
35
|
+
}): void;
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.unitGetsNearThisUnit = unitGetsNearThisUnit;
|
|
4
|
+
exports.onUnitAttacked = onUnitAttacked;
|
|
5
|
+
const w3ts_1 = require("w3ts");
|
|
6
|
+
/**
|
|
7
|
+
* Good for once a unit gets near you, but not good while they are near you since the event is only triggered on entry, not during
|
|
8
|
+
* @param unit
|
|
9
|
+
* @param range
|
|
10
|
+
* @param cb
|
|
11
|
+
* @param config
|
|
12
|
+
* @returns
|
|
13
|
+
*/
|
|
14
|
+
function unitGetsNearThisUnit(unit, range, cb, config) {
|
|
15
|
+
const trig = w3ts_1.Trigger.create();
|
|
16
|
+
/**
|
|
17
|
+
* A unique set of the units effected
|
|
18
|
+
*/
|
|
19
|
+
let effectedUnitPool = [];
|
|
20
|
+
trig.registerUnitInRage(unit.handle, range, config?.filter ?? (() => true));
|
|
21
|
+
trig.addAction(() => {
|
|
22
|
+
const u = w3ts_1.Unit.fromEvent();
|
|
23
|
+
if (!u) {
|
|
24
|
+
return;
|
|
25
|
+
}
|
|
26
|
+
if (!effectedUnitPool.includes(u)) {
|
|
27
|
+
effectedUnitPool.push(u);
|
|
28
|
+
}
|
|
29
|
+
if (config?.uniqueUnitsOnly && !effectedUnitPool.includes(u)) {
|
|
30
|
+
cb(u);
|
|
31
|
+
}
|
|
32
|
+
else {
|
|
33
|
+
cb(u);
|
|
34
|
+
}
|
|
35
|
+
});
|
|
36
|
+
const destroy = () => {
|
|
37
|
+
if (config?.onDestroy) {
|
|
38
|
+
config?.onDestroy(effectedUnitPool);
|
|
39
|
+
}
|
|
40
|
+
// print("destroying the trigger!");
|
|
41
|
+
trig.destroy();
|
|
42
|
+
// print("The trigger ref: ", trig);
|
|
43
|
+
};
|
|
44
|
+
const clearUniqueUnits = () => {
|
|
45
|
+
effectedUnitPool = [];
|
|
46
|
+
};
|
|
47
|
+
return {
|
|
48
|
+
cleanupUnitGetsNearThisUnit: (delay) => {
|
|
49
|
+
if (delay) {
|
|
50
|
+
const timer = w3ts_1.Timer.create();
|
|
51
|
+
timer.start(delay, false, () => {
|
|
52
|
+
destroy();
|
|
53
|
+
timer.destroy();
|
|
54
|
+
});
|
|
55
|
+
return;
|
|
56
|
+
}
|
|
57
|
+
destroy();
|
|
58
|
+
},
|
|
59
|
+
clearUniqueUnits,
|
|
60
|
+
};
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
*
|
|
64
|
+
* @param cb
|
|
65
|
+
* @param abilityId
|
|
66
|
+
* @param dummyLifeTime Maybe be necessary to have a long lifetime so spells like chain lightning will have time to bounce to all targets
|
|
67
|
+
* @param owner
|
|
68
|
+
*/
|
|
69
|
+
// export function useTempDummyUnit(cb: (dummy: Unit) => void, abilityId: number, dummyLifeTime: number, owner: MapPlayer, x: number, y: number, facing: number, config?: { abilityLevel?: number; modelType?: "cenariusGhost" }) {
|
|
70
|
+
// let dummy: Unit | undefined = undefined;
|
|
71
|
+
// if (config?.modelType === "cenariusGhost") {
|
|
72
|
+
// dummy = Unit.create(owner, UNITS.dummyCaster_cenariusGhost, x, y, facing);
|
|
73
|
+
// dummy?.setScale(1, 1, 1);
|
|
74
|
+
// } else {
|
|
75
|
+
// dummy = Unit.create(owner, UNITS.dummyCaster, x, y, facing);
|
|
76
|
+
// }
|
|
77
|
+
// const t = Timer.create();
|
|
78
|
+
// if (dummy) {
|
|
79
|
+
// dummy.addAbility(abilityId);
|
|
80
|
+
// dummy.setAbilityManaCost(abilityId, config?.abilityLevel ? config.abilityLevel - 1 : 0, 0);
|
|
81
|
+
// cb(dummy);
|
|
82
|
+
// t.start(dummyLifeTime, false, () => {
|
|
83
|
+
// dummy?.destroy();
|
|
84
|
+
// t.destroy();
|
|
85
|
+
// });
|
|
86
|
+
// }
|
|
87
|
+
// }
|
|
88
|
+
/**
|
|
89
|
+
* Creates a trigger to monitor when a unit is attacked
|
|
90
|
+
*
|
|
91
|
+
* We could also have all functions execute in this single trigger's context instead of creating new triggers each time the function is used.
|
|
92
|
+
* @param cb
|
|
93
|
+
* @param config
|
|
94
|
+
*/
|
|
95
|
+
function onUnitAttacked(cb, config) {
|
|
96
|
+
const attackerTriggerCooldown = new Set();
|
|
97
|
+
const t = w3ts_1.Trigger.create();
|
|
98
|
+
t.registerAnyUnitEvent(EVENT_PLAYER_UNIT_ATTACKED);
|
|
99
|
+
t.addAction(() => {
|
|
100
|
+
const attacker = w3ts_1.Unit.fromHandle(GetAttacker());
|
|
101
|
+
const victim = w3ts_1.Unit.fromHandle(GetAttackedUnitBJ());
|
|
102
|
+
if (!attacker || !victim) {
|
|
103
|
+
return;
|
|
104
|
+
}
|
|
105
|
+
//Attack was not below the proc chance, and thus we will not use the cb function
|
|
106
|
+
if (config.procChance &&
|
|
107
|
+
Math.ceil(Math.random() * 100) >= config.procChance) {
|
|
108
|
+
return;
|
|
109
|
+
}
|
|
110
|
+
//Attacker has already used the trigger
|
|
111
|
+
if (config.attackerCooldown && attackerTriggerCooldown.has(attacker)) {
|
|
112
|
+
return;
|
|
113
|
+
}
|
|
114
|
+
attackerTriggerCooldown.add(attacker);
|
|
115
|
+
//Finally, after all conditions have been met, use the cb function
|
|
116
|
+
cb(attacker, victim);
|
|
117
|
+
const t = w3ts_1.Timer.create();
|
|
118
|
+
//removes the attacker from the cooldown group after 1/3 of that units attack cooldown has passed.
|
|
119
|
+
t.start(attacker.getAttackCooldown(0) / 3, false, () => {
|
|
120
|
+
attackerTriggerCooldown.delete(attacker);
|
|
121
|
+
t.destroy();
|
|
122
|
+
});
|
|
123
|
+
});
|
|
124
|
+
}
|
|
125
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJpbGl0aWVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3V0aWxzL2FiaWxpdGllcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQVdBLG9EQWtFQztBQXdDRCx3Q0EyQ0M7QUFoS0QsK0JBQTRDO0FBRzVDOzs7Ozs7O0dBT0c7QUFDSCxTQUFnQixvQkFBb0IsQ0FDbEMsSUFBVSxFQUNWLEtBQWEsRUFDYixFQUFxQixFQUNyQixNQUlDO0lBRUQsTUFBTSxJQUFJLEdBQUcsY0FBTyxDQUFDLE1BQU0sRUFBRSxDQUFDO0lBRTlCOztPQUVHO0lBQ0gsSUFBSSxnQkFBZ0IsR0FBVyxFQUFFLENBQUM7SUFFbEMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBRTVFLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1FBQ2xCLE1BQU0sQ0FBQyxHQUFHLFdBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUUzQixJQUFJLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDUCxPQUFPO1FBQ1QsQ0FBQztRQUVELElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztZQUNsQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDM0IsQ0FBQztRQUVELElBQUksTUFBTSxFQUFFLGVBQWUsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1lBQzdELEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNSLENBQUM7YUFBTSxDQUFDO1lBQ04sRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ1IsQ0FBQztJQUNILENBQUMsQ0FBQyxDQUFDO0lBRUgsTUFBTSxPQUFPLEdBQUcsR0FBRyxF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
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function enableCameraZoom(): void;
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.enableCameraZoom = enableCameraZoom;
|
|
4
|
+
const w3ts_1 = require("w3ts");
|
|
5
|
+
const players_1 = require("./players");
|
|
6
|
+
function enableCameraZoom() {
|
|
7
|
+
const t = w3ts_1.Trigger.create();
|
|
8
|
+
(0, players_1.forEachPlayer)((p) => {
|
|
9
|
+
SetCameraFieldForPlayer(p.handle, CAMERA_FIELD_FARZ, 10000, 0.25);
|
|
10
|
+
t.registerPlayerChatEvent(p, "-cam", false);
|
|
11
|
+
t.addAction(() => {
|
|
12
|
+
const str = GetEventPlayerChatString();
|
|
13
|
+
const triggeringPlayer = GetTriggerPlayer();
|
|
14
|
+
if (str && triggeringPlayer) {
|
|
15
|
+
const [command, distance] = str?.split(" ");
|
|
16
|
+
SetCameraFieldForPlayer(triggeringPlayer, CAMERA_FIELD_FARZ, 10000, 0.25);
|
|
17
|
+
if (distance === "mid") {
|
|
18
|
+
SetCameraFieldForPlayer(triggeringPlayer, CAMERA_FIELD_TARGET_DISTANCE, 4500, 0.25);
|
|
19
|
+
return;
|
|
20
|
+
}
|
|
21
|
+
else if (distance === "far") {
|
|
22
|
+
SetCameraFieldForPlayer(triggeringPlayer, CAMERA_FIELD_TARGET_DISTANCE, 6000, 0.25);
|
|
23
|
+
return;
|
|
24
|
+
}
|
|
25
|
+
else if (distance === "max") {
|
|
26
|
+
SetCameraFieldForPlayer(triggeringPlayer, CAMERA_FIELD_TARGET_DISTANCE, 7800, 0.25);
|
|
27
|
+
return;
|
|
28
|
+
}
|
|
29
|
+
const distanceAsNumber = Number(distance);
|
|
30
|
+
if (typeof distanceAsNumber !== "number")
|
|
31
|
+
return;
|
|
32
|
+
SetCameraFieldForPlayer(triggeringPlayer, CAMERA_FIELD_TARGET_DISTANCE, distanceAsNumber, 0.25);
|
|
33
|
+
}
|
|
34
|
+
});
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FtZXJhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3V0aWxzL2NhbWVyYS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUtBLDRDQXlEQztBQTlERCwrQkFBK0I7QUFDL0IsdUNBQTBDO0FBSTFDLFNBQWdCLGdCQUFnQjtJQUM5QixNQUFNLENBQUMsR0FBRyxjQUFPLENBQUMsTUFBTSxFQUFFLENBQUM7SUFDM0IsSUFBQSx1QkFBYSxFQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7UUFDbEIsdUJBQXVCLENBQUMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxpQkFBaUIsRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFFbEUsQ0FBQyxDQUFDLHVCQUF1QixDQUFDLENBQUMsRUFBRSxNQUFNLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFFNUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDZixNQUFNLEdBQUcsR0FBRyx3QkFBd0IsRUFBRSxDQUFDO1lBQ3ZDLE1BQU0sZ0JBQWdCLEdBQUcsZ0JBQWdCLEVBQUUsQ0FBQztZQUM1QyxJQUFJLEdBQUcsSUFBSSxnQkFBZ0IsRUFBRSxDQUFDO2dCQUM1QixNQUFNLENBQUMsT0FBTyxFQUFFLFFBQVEsQ0FBQyxHQUFHLEdBQUcsRUFBRSxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7Z0JBQzVDLHVCQUF1QixDQUNyQixnQkFBZ0IsRUFDaEIsaUJBQWlCLEVBQ2pCLEtBQUssRUFDTCxJQUFJLENBQ0wsQ0FBQztnQkFFRixJQUFLLFFBQTRCLEtBQUssS0FBSyxFQUFFLENBQUM7b0JBQzVDLHVCQUF1QixDQUNyQixnQkFBZ0IsRUFDaEIsNEJBQTRCLEVBQzVCLElBQUksRUFDSixJQUFJLENBQ0wsQ0FBQztvQkFDRixPQUFPO2dCQUNULENBQUM7cUJBQU0sSUFBSyxRQUE0QixLQUFLLEtBQUssRUFBRSxDQUFDO29CQUNuRCx1QkFBdUIsQ0FDckIsZ0JBQWdCLEVBQ2hCLDRCQUE0QixFQUM1QixJQUFJLEVBQ0osSUFBSSxDQUNMLENBQUM7b0JBQ0YsT0FBTztnQkFDVCxDQUFDO3FCQUFNLElBQUssUUFBNEIsS0FBSyxLQUFLLEVBQUUsQ0FBQztvQkFDbkQsdUJBQXVCLENBQ3JCLGdCQUFnQixFQUNoQiw0QkFBNEIsRUFDNUIsSUFBSSxFQUNKLElBQUksQ0FDTCxDQUFDO29CQUNGLE9BQU87Z0JBQ1QsQ0FBQztnQkFFRCxNQUFNLGdCQUFnQixHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztnQkFDMUMsSUFBSSxPQUFPLGdCQUFnQixLQUFLLFFBQVE7b0JBQUUsT0FBTztnQkFFakQsdUJBQXVCLENBQ3JCLGdCQUFnQixFQUNoQiw0QkFBNEIsRUFDNUIsZ0JBQWdCLEVBQ2hCLElBQUksQ0FDTCxDQUFDO1lBQ0osQ0FBQztRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDIn0=
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { MapPlayer, Trigger } from "w3ts";
|
|
2
|
+
/**
|
|
3
|
+
* Setup trigger to listen for a chat command for the players specified in the array. Execute function when triggered
|
|
4
|
+
* @param command -cam , -name, -start, etc
|
|
5
|
+
* @param players
|
|
6
|
+
* @param fn
|
|
7
|
+
*/
|
|
8
|
+
export declare function createChatCommand(players: MapPlayer[], command: string, exact: boolean, fn: (player: MapPlayer, data: {
|
|
9
|
+
trigger: Trigger;
|
|
10
|
+
command: string;
|
|
11
|
+
data?: string;
|
|
12
|
+
}) => void): void;
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.createChatCommand = createChatCommand;
|
|
4
|
+
const w3ts_1 = require("w3ts");
|
|
5
|
+
/**
|
|
6
|
+
* Setup trigger to listen for a chat command for the players specified in the array. Execute function when triggered
|
|
7
|
+
* @param command -cam , -name, -start, etc
|
|
8
|
+
* @param players
|
|
9
|
+
* @param fn
|
|
10
|
+
*/
|
|
11
|
+
function createChatCommand(players, command, exact, fn) {
|
|
12
|
+
const trigger = w3ts_1.Trigger.create();
|
|
13
|
+
players.forEach((p) => {
|
|
14
|
+
trigger.registerPlayerChatEvent(p, command, exact);
|
|
15
|
+
trigger.addAction(() => {
|
|
16
|
+
const str = GetEventPlayerChatString();
|
|
17
|
+
const [_, data] = str?.split(" ") ?? [];
|
|
18
|
+
fn(p, { trigger, command, data });
|
|
19
|
+
});
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhdC1jb21tYW5kLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3V0aWxzL2NoYXQtY29tbWFuZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQVFBLDhDQWFDO0FBckJELCtCQUEwQztBQUUxQzs7Ozs7R0FLRztBQUNILFNBQWdCLGlCQUFpQixDQUFDLE9BQW9CLEVBQUUsT0FBZSxFQUFFLEtBQWMsRUFBRSxFQUEyRjtJQUNoTCxNQUFNLE9BQU8sR0FBRyxjQUFPLENBQUMsTUFBTSxFQUFFLENBQUM7SUFFakMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO1FBQ2xCLE9BQU8sQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDLEVBQUUsT0FBTyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBRW5ELE9BQU8sQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQ25CLE1BQU0sR0FBRyxHQUFHLHdCQUF3QixFQUFFLENBQUM7WUFDdkMsTUFBTSxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsR0FBRyxHQUFHLEVBQUUsS0FBSyxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUV4QyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQ3RDLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQyxDQUFDLENBQUM7QUFDUCxDQUFDIn0=
|
|
@@ -1,139 +1,109 @@
|
|
|
1
|
-
export const playerRGBMap
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
]
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
]
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
PlayerStrings[
|
|
41
|
-
PlayerStrings[
|
|
42
|
-
PlayerStrings[2].
|
|
43
|
-
PlayerStrings[
|
|
44
|
-
PlayerStrings[
|
|
45
|
-
PlayerStrings[
|
|
46
|
-
PlayerStrings[
|
|
47
|
-
PlayerStrings[
|
|
48
|
-
PlayerStrings[
|
|
49
|
-
PlayerStrings[
|
|
50
|
-
PlayerStrings[
|
|
51
|
-
PlayerStrings[
|
|
52
|
-
PlayerStrings[
|
|
53
|
-
PlayerStrings[
|
|
54
|
-
PlayerStrings[
|
|
55
|
-
PlayerStrings[
|
|
56
|
-
PlayerStrings[
|
|
57
|
-
PlayerStrings[
|
|
58
|
-
PlayerStrings[
|
|
59
|
-
PlayerStrings[
|
|
60
|
-
PlayerStrings[
|
|
61
|
-
PlayerStrings[
|
|
62
|
-
PlayerStrings[
|
|
63
|
-
PlayerStrings[
|
|
64
|
-
|
|
65
|
-
PlayerStrings[
|
|
66
|
-
PlayerStrings[
|
|
67
|
-
PlayerStrings[
|
|
68
|
-
PlayerStrings[
|
|
69
|
-
PlayerStrings[
|
|
70
|
-
PlayerStrings[
|
|
71
|
-
PlayerStrings[
|
|
72
|
-
PlayerStrings[
|
|
73
|
-
PlayerStrings[
|
|
74
|
-
PlayerStrings[
|
|
75
|
-
PlayerStrings[
|
|
76
|
-
PlayerStrings[
|
|
77
|
-
PlayerStrings[
|
|
78
|
-
PlayerStrings[
|
|
79
|
-
PlayerStrings[
|
|
80
|
-
PlayerStrings[
|
|
81
|
-
PlayerStrings[
|
|
82
|
-
PlayerStrings[
|
|
83
|
-
PlayerStrings[
|
|
84
|
-
PlayerStrings[
|
|
85
|
-
PlayerStrings[
|
|
86
|
-
PlayerStrings[
|
|
87
|
-
PlayerStrings[
|
|
88
|
-
PlayerStrings[
|
|
89
|
-
PlayerStrings[
|
|
90
|
-
PlayerStrings[
|
|
91
|
-
PlayerStrings[
|
|
92
|
-
PlayerStrings[
|
|
93
|
-
PlayerStrings[
|
|
94
|
-
PlayerStrings[
|
|
95
|
-
PlayerStrings[
|
|
96
|
-
PlayerStrings[
|
|
97
|
-
PlayerStrings[
|
|
98
|
-
PlayerStrings[
|
|
99
|
-
PlayerStrings[
|
|
100
|
-
PlayerStrings[
|
|
101
|
-
PlayerStrings[
|
|
102
|
-
PlayerStrings[
|
|
103
|
-
PlayerStrings[
|
|
104
|
-
PlayerStrings[
|
|
105
|
-
PlayerStrings[
|
|
106
|
-
PlayerStrings[
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
PlayerStrings[15].red = 190
|
|
111
|
-
PlayerStrings[15].green = 0
|
|
112
|
-
PlayerStrings[15].blue = 254
|
|
113
|
-
PlayerStrings[16].red = 235
|
|
114
|
-
PlayerStrings[16].green = 205
|
|
115
|
-
PlayerStrings[16].blue = 135
|
|
116
|
-
PlayerStrings[17].red = 248
|
|
117
|
-
PlayerStrings[17].green = 164
|
|
118
|
-
PlayerStrings[17].blue = 139
|
|
119
|
-
PlayerStrings[18].red = 191
|
|
120
|
-
PlayerStrings[18].green = 255
|
|
121
|
-
PlayerStrings[18].blue = 128
|
|
122
|
-
PlayerStrings[19].red = 220
|
|
123
|
-
PlayerStrings[19].green = 185
|
|
124
|
-
PlayerStrings[19].blue = 235
|
|
125
|
-
PlayerStrings[20].red = 40
|
|
126
|
-
PlayerStrings[20].green = 40
|
|
127
|
-
PlayerStrings[20].blue = 40
|
|
128
|
-
PlayerStrings[21].red = 235
|
|
129
|
-
PlayerStrings[21].green = 240
|
|
130
|
-
PlayerStrings[21].blue = 255
|
|
131
|
-
PlayerStrings[22].red = 0
|
|
132
|
-
PlayerStrings[22].green = 120
|
|
133
|
-
PlayerStrings[22].blue = 30
|
|
134
|
-
PlayerStrings[23].red = 164
|
|
135
|
-
PlayerStrings[23].green = 111
|
|
136
|
-
PlayerStrings[23].blue = 51
|
|
137
|
-
*
|
|
138
|
-
*
|
|
139
|
-
*/
|
|
1
|
+
export declare const playerRGBMap: Map<number, {
|
|
2
|
+
r: number;
|
|
3
|
+
g: number;
|
|
4
|
+
b: number;
|
|
5
|
+
}>;
|
|
6
|
+
export declare const playerHexColorMap: Map<number, string>;
|
|
7
|
+
/**
|
|
8
|
+
*
|
|
9
|
+
*
|
|
10
|
+
PlayerStrings[0].colour = "|c00ff0303"
|
|
11
|
+
PlayerStrings[1].colour = "|c000042ff"
|
|
12
|
+
PlayerStrings[2].colour = "|c001ce6b9"
|
|
13
|
+
PlayerStrings[3].colour = "|c00540081"
|
|
14
|
+
PlayerStrings[4].colour = "|c00fffc00"
|
|
15
|
+
PlayerStrings[5].colour = "|c00fe8a0e"
|
|
16
|
+
PlayerStrings[6].colour = "|c0020c000"
|
|
17
|
+
PlayerStrings[7].colour = "|c00e55bb0"
|
|
18
|
+
PlayerStrings[8].colour = "|c00959697"
|
|
19
|
+
PlayerStrings[9].colour = "|c007ebff1"
|
|
20
|
+
PlayerStrings[10].colour = "|c00106246"
|
|
21
|
+
PlayerStrings[11].colour = "|c004e2a04"
|
|
22
|
+
PlayerStrings[12].colour = "|c009b0000"
|
|
23
|
+
PlayerStrings[13].colour = "|c000000c3"
|
|
24
|
+
PlayerStrings[14].colour = "|c0000eaff"
|
|
25
|
+
PlayerStrings[15].colour = "|c00be00fe"
|
|
26
|
+
PlayerStrings[16].colour = "|c00ebcd87"
|
|
27
|
+
PlayerStrings[17].colour = "|c00f8a48b"
|
|
28
|
+
PlayerStrings[18].colour = "|c00bfff80"
|
|
29
|
+
PlayerStrings[19].colour = "|c00dcb9eb"
|
|
30
|
+
PlayerStrings[20].colour = "|c00282828"
|
|
31
|
+
PlayerStrings[21].colour = "|c00ebf0ff"
|
|
32
|
+
PlayerStrings[22].colour = "|c0000781e"
|
|
33
|
+
PlayerStrings[23].colour = "|c00a46f33"
|
|
34
|
+
-- RGB
|
|
35
|
+
PlayerStrings[0].red = 255
|
|
36
|
+
PlayerStrings[0].green = 3
|
|
37
|
+
PlayerStrings[0].blue = 3
|
|
38
|
+
PlayerStrings[1].red = 0
|
|
39
|
+
PlayerStrings[1].green = 66
|
|
40
|
+
PlayerStrings[1].blue = 255
|
|
41
|
+
PlayerStrings[2].red = 28
|
|
42
|
+
PlayerStrings[2].green = 230
|
|
43
|
+
PlayerStrings[2].blue = 185
|
|
44
|
+
PlayerStrings[3].red = 84
|
|
45
|
+
PlayerStrings[3].green = 0
|
|
46
|
+
PlayerStrings[3].blue = 129
|
|
47
|
+
PlayerStrings[4].red = 255
|
|
48
|
+
PlayerStrings[4].green = 254
|
|
49
|
+
PlayerStrings[4].blue = 0
|
|
50
|
+
PlayerStrings[5].red = 254
|
|
51
|
+
PlayerStrings[5].green = 138
|
|
52
|
+
PlayerStrings[5].blue = 14
|
|
53
|
+
PlayerStrings[6].red = 32
|
|
54
|
+
PlayerStrings[6].green = 192
|
|
55
|
+
PlayerStrings[6].blue = 0
|
|
56
|
+
PlayerStrings[7].red = 229
|
|
57
|
+
PlayerStrings[7].green = 91
|
|
58
|
+
PlayerStrings[7].blue = 176
|
|
59
|
+
PlayerStrings[8].red = 149
|
|
60
|
+
PlayerStrings[8].green = 150
|
|
61
|
+
PlayerStrings[8].blue = 151
|
|
62
|
+
PlayerStrings[9].red = 126
|
|
63
|
+
PlayerStrings[9].green = 191
|
|
64
|
+
PlayerStrings[9].blue = 241
|
|
65
|
+
PlayerStrings[10].red = 16
|
|
66
|
+
PlayerStrings[10].green = 98
|
|
67
|
+
PlayerStrings[10].blue = 70
|
|
68
|
+
PlayerStrings[11].red = 78
|
|
69
|
+
PlayerStrings[11].green = 42
|
|
70
|
+
PlayerStrings[11].blue = 4
|
|
71
|
+
PlayerStrings[12].red = 155
|
|
72
|
+
PlayerStrings[12].green = 0
|
|
73
|
+
PlayerStrings[12].blue = 0
|
|
74
|
+
PlayerStrings[13].red = 0
|
|
75
|
+
PlayerStrings[13].green = 0
|
|
76
|
+
PlayerStrings[13].blue = 195
|
|
77
|
+
PlayerStrings[14].red = 155
|
|
78
|
+
PlayerStrings[14].green = 234
|
|
79
|
+
PlayerStrings[14].blue = 255
|
|
80
|
+
PlayerStrings[15].red = 190
|
|
81
|
+
PlayerStrings[15].green = 0
|
|
82
|
+
PlayerStrings[15].blue = 254
|
|
83
|
+
PlayerStrings[16].red = 235
|
|
84
|
+
PlayerStrings[16].green = 205
|
|
85
|
+
PlayerStrings[16].blue = 135
|
|
86
|
+
PlayerStrings[17].red = 248
|
|
87
|
+
PlayerStrings[17].green = 164
|
|
88
|
+
PlayerStrings[17].blue = 139
|
|
89
|
+
PlayerStrings[18].red = 191
|
|
90
|
+
PlayerStrings[18].green = 255
|
|
91
|
+
PlayerStrings[18].blue = 128
|
|
92
|
+
PlayerStrings[19].red = 220
|
|
93
|
+
PlayerStrings[19].green = 185
|
|
94
|
+
PlayerStrings[19].blue = 235
|
|
95
|
+
PlayerStrings[20].red = 40
|
|
96
|
+
PlayerStrings[20].green = 40
|
|
97
|
+
PlayerStrings[20].blue = 40
|
|
98
|
+
PlayerStrings[21].red = 235
|
|
99
|
+
PlayerStrings[21].green = 240
|
|
100
|
+
PlayerStrings[21].blue = 255
|
|
101
|
+
PlayerStrings[22].red = 0
|
|
102
|
+
PlayerStrings[22].green = 120
|
|
103
|
+
PlayerStrings[22].blue = 30
|
|
104
|
+
PlayerStrings[23].red = 164
|
|
105
|
+
PlayerStrings[23].green = 111
|
|
106
|
+
PlayerStrings[23].blue = 51
|
|
107
|
+
*
|
|
108
|
+
*
|
|
109
|
+
*/
|