pokemon-io-core 0.0.127 → 0.0.129
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.
|
@@ -21,20 +21,52 @@ export const applyEndOfTurnStatuses = (state) => {
|
|
|
21
21
|
const def = state.runtime.statusesById[st.statusId];
|
|
22
22
|
if (!def)
|
|
23
23
|
continue;
|
|
24
|
+
const stacksMultiplier = st.stacks;
|
|
24
25
|
let damageFromStatus = 0;
|
|
26
|
+
let healFromStatus = 0;
|
|
27
|
+
const statChanges = [];
|
|
28
|
+
// ✅ Procesar TODOS los efectos del estado
|
|
25
29
|
def.effectsPerStack.forEach((eff) => {
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
30
|
+
switch (eff.kind) {
|
|
31
|
+
case "damage":
|
|
32
|
+
const base = typeof eff.flatAmount === "number"
|
|
33
|
+
? eff.flatAmount
|
|
34
|
+
: typeof eff.basePower === "number"
|
|
35
|
+
? eff.basePower
|
|
36
|
+
: 10;
|
|
37
|
+
damageFromStatus += base * stacksMultiplier;
|
|
38
|
+
break;
|
|
39
|
+
case "heal":
|
|
40
|
+
const healAmount = typeof eff.amount === "number" ? eff.amount : 10;
|
|
41
|
+
healFromStatus += healAmount * stacksMultiplier;
|
|
42
|
+
break;
|
|
43
|
+
case "modify_stats":
|
|
44
|
+
// Aplicar cambios a stat stages
|
|
45
|
+
if (eff.offenseDelta) {
|
|
46
|
+
statChanges.push({
|
|
47
|
+
stat: "offense",
|
|
48
|
+
delta: eff.offenseDelta * stacksMultiplier,
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
if (eff.defenseDelta) {
|
|
52
|
+
statChanges.push({
|
|
53
|
+
stat: "defense",
|
|
54
|
+
delta: eff.defenseDelta * stacksMultiplier,
|
|
55
|
+
});
|
|
56
|
+
}
|
|
57
|
+
if (eff.speedDelta) {
|
|
58
|
+
statChanges.push({
|
|
59
|
+
stat: "speed",
|
|
60
|
+
delta: eff.speedDelta * stacksMultiplier,
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
break;
|
|
64
|
+
default:
|
|
65
|
+
break;
|
|
34
66
|
}
|
|
35
67
|
});
|
|
68
|
+
// ✅ Aplicar daño si hay
|
|
36
69
|
if (damageFromStatus > 0) {
|
|
37
|
-
// Emit status tick event for narration
|
|
38
70
|
events.push({
|
|
39
71
|
...createBaseEvent(state.turnNumber, "status_tick", `${updated.fighterId} sufre por ${st.statusId}`),
|
|
40
72
|
targetId: updated.fighterId,
|
|
@@ -50,7 +82,51 @@ export const applyEndOfTurnStatuses = (state) => {
|
|
|
50
82
|
break;
|
|
51
83
|
}
|
|
52
84
|
}
|
|
53
|
-
//
|
|
85
|
+
// ✅ Aplicar curación si hay
|
|
86
|
+
if (healFromStatus > 0) {
|
|
87
|
+
const newHp = Math.min(updated.maxHp, updated.currentHp + healFromStatus);
|
|
88
|
+
const actualHeal = newHp - updated.currentHp;
|
|
89
|
+
if (actualHeal > 0) {
|
|
90
|
+
events.push({
|
|
91
|
+
...createBaseEvent(state.turnNumber, "status_tick", `${updated.fighterId} se beneficia de ${st.statusId}`),
|
|
92
|
+
targetId: updated.fighterId,
|
|
93
|
+
statusId: st.statusId,
|
|
94
|
+
stacks: st.stacks,
|
|
95
|
+
});
|
|
96
|
+
events.push({
|
|
97
|
+
...createBaseEvent(state.turnNumber, "heal", `${updated.fighterId} recupera ${actualHeal} HP por ${st.statusId}`),
|
|
98
|
+
actorId: updated.fighterId,
|
|
99
|
+
targetId: updated.fighterId,
|
|
100
|
+
amount: actualHeal,
|
|
101
|
+
});
|
|
102
|
+
updated = { ...updated, currentHp: newHp };
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
// ✅ Aplicar cambios de stats si hay
|
|
106
|
+
if (statChanges.length > 0) {
|
|
107
|
+
events.push({
|
|
108
|
+
...createBaseEvent(state.turnNumber, "status_tick", `${updated.fighterId} sigue ${st.statusId}`),
|
|
109
|
+
targetId: updated.fighterId,
|
|
110
|
+
statusId: st.statusId,
|
|
111
|
+
stacks: st.stacks,
|
|
112
|
+
});
|
|
113
|
+
const newStatStages = { ...updated.statStages };
|
|
114
|
+
const changes = {};
|
|
115
|
+
statChanges.forEach(({ stat, delta }) => {
|
|
116
|
+
const currentStage = newStatStages[stat] || 0;
|
|
117
|
+
const newStage = Math.max(-6, Math.min(6, currentStage + delta));
|
|
118
|
+
newStatStages[stat] = newStage;
|
|
119
|
+
changes[stat] = delta;
|
|
120
|
+
});
|
|
121
|
+
events.push({
|
|
122
|
+
...createBaseEvent(state.turnNumber, "stats_changed", `Stats de ${updated.fighterId} cambian por ${st.statusId}`),
|
|
123
|
+
targetId: updated.fighterId,
|
|
124
|
+
changes: changes,
|
|
125
|
+
source: "status",
|
|
126
|
+
});
|
|
127
|
+
updated = { ...updated, statStages: newStatStages };
|
|
128
|
+
}
|
|
129
|
+
// ✅ Decrementar duración y manejar expiración
|
|
54
130
|
const remaining = st.remainingTurns - 1;
|
|
55
131
|
if (remaining > 0) {
|
|
56
132
|
let nextStacks = st.stacks;
|
|
@@ -49,6 +49,9 @@ export declare const TRIBE_FIGHTER_IDS: {
|
|
|
49
49
|
readonly PORTERO_MISTERIOSO: import("../../index.js").FighterId;
|
|
50
50
|
readonly ED_GEIN: import("../../index.js").FighterId;
|
|
51
51
|
readonly JOSE_BRETON: import("../../index.js").FighterId;
|
|
52
|
+
readonly RUPER: import("../../index.js").FighterId;
|
|
53
|
+
readonly JESUCRISTO: import("../../index.js").FighterId;
|
|
54
|
+
readonly PEDRO_SANCHEZ: import("../../index.js").FighterId;
|
|
52
55
|
};
|
|
53
56
|
export declare const TRIBE_MOVE_IDS: {
|
|
54
57
|
readonly TORTAZO: import("../../index.js").MoveId;
|
|
@@ -79,6 +82,8 @@ export declare const TRIBE_MOVE_IDS: {
|
|
|
79
82
|
readonly MANCUERNAZO_DEPORTISTA: import("../../index.js").MoveId;
|
|
80
83
|
readonly CHARLA_BUENISTA: import("../../index.js").MoveId;
|
|
81
84
|
readonly GUITARRITA: import("../../index.js").MoveId;
|
|
85
|
+
readonly SIESTA_INFINITA: import("../../index.js").MoveId;
|
|
86
|
+
readonly POTA_ACIDA: import("../../index.js").MoveId;
|
|
82
87
|
};
|
|
83
88
|
export declare const TRIBE_STATUS_IDS: {
|
|
84
89
|
readonly MEDITAR: import("../../index.js").StatusId;
|
|
@@ -50,6 +50,9 @@ export const TRIBE_FIGHTER_IDS = {
|
|
|
50
50
|
PORTERO_MISTERIOSO: fighterId("portero_misterioso"),
|
|
51
51
|
ED_GEIN: fighterId("ed_gein"),
|
|
52
52
|
JOSE_BRETON: fighterId("jose_breton"),
|
|
53
|
+
RUPER: fighterId("ruper"),
|
|
54
|
+
JESUCRISTO: fighterId("jesucristo"),
|
|
55
|
+
PEDRO_SANCHEZ: fighterId("pedro_sanchez"),
|
|
53
56
|
};
|
|
54
57
|
export const TRIBE_MOVE_IDS = {
|
|
55
58
|
TORTAZO: moveId("tortazo"),
|
|
@@ -80,6 +83,8 @@ export const TRIBE_MOVE_IDS = {
|
|
|
80
83
|
MANCUERNAZO_DEPORTISTA: moveId("mancuernazo"),
|
|
81
84
|
CHARLA_BUENISTA: moveId("charla_buenista"),
|
|
82
85
|
GUITARRITA: moveId("guitarrita"),
|
|
86
|
+
SIESTA_INFINITA: moveId("siesta_infinita"),
|
|
87
|
+
POTA_ACIDA: moveId("pota_acida"),
|
|
83
88
|
};
|
|
84
89
|
export const TRIBE_STATUS_IDS = {
|
|
85
90
|
MEDITAR: statusId("meditar"),
|
|
@@ -6,14 +6,13 @@ const makeStats = (offense, defense, speed, crit) => ({
|
|
|
6
6
|
crit,
|
|
7
7
|
});
|
|
8
8
|
export const TRIBE_FIGHTERS = [
|
|
9
|
-
// --- TIER 1: AZUL (Suma Atk + Def < 100) ---
|
|
10
9
|
{
|
|
11
10
|
id: TRIBE_FIGHTER_IDS.LOS_GARCIA,
|
|
12
11
|
name: "Los García",
|
|
13
12
|
description: "Cree que se hará rico mañana. Rápido hablando, frágil si le preguntas qué hace.",
|
|
14
13
|
img: "los_garcia",
|
|
15
14
|
classIds: [TRIBE_TYPE_IDS.FORMAL],
|
|
16
|
-
baseStats: makeStats(
|
|
15
|
+
baseStats: makeStats(78, 70, 80, 5),
|
|
17
16
|
recommendedMoves: [],
|
|
18
17
|
},
|
|
19
18
|
{
|
|
@@ -22,7 +21,7 @@ export const TRIBE_FIGHTERS = [
|
|
|
22
21
|
description: "Cree que se hará rico mañana. Rápido hablando, frágil si le preguntas qué hace.",
|
|
23
22
|
img: "casado",
|
|
24
23
|
classIds: [TRIBE_TYPE_IDS.DEPORTISTA, TRIBE_TYPE_IDS.FORMAL],
|
|
25
|
-
baseStats: makeStats(
|
|
24
|
+
baseStats: makeStats(70, 80, 65, 5),
|
|
26
25
|
recommendedMoves: [],
|
|
27
26
|
},
|
|
28
27
|
{
|
|
@@ -31,7 +30,7 @@ export const TRIBE_FIGHTERS = [
|
|
|
31
30
|
description: "Cree que se hará rico mañana. Rápido hablando, frágil si le preguntas qué hace.",
|
|
32
31
|
img: "virtual",
|
|
33
32
|
classIds: [TRIBE_TYPE_IDS.MISTICO, TRIBE_TYPE_IDS.ARTISTA],
|
|
34
|
-
baseStats: makeStats(
|
|
33
|
+
baseStats: makeStats(70, 85, 70, 5),
|
|
35
34
|
recommendedMoves: [],
|
|
36
35
|
},
|
|
37
36
|
{
|
|
@@ -40,7 +39,7 @@ export const TRIBE_FIGHTERS = [
|
|
|
40
39
|
description: "Cree que se hará rico mañana. Rápido hablando, frágil si le preguntas qué hace.",
|
|
41
40
|
img: "murphy",
|
|
42
41
|
classIds: [TRIBE_TYPE_IDS.MISTERIOSO],
|
|
43
|
-
baseStats: makeStats(
|
|
42
|
+
baseStats: makeStats(75, 75, 75, 5),
|
|
44
43
|
recommendedMoves: [],
|
|
45
44
|
},
|
|
46
45
|
{
|
|
@@ -49,7 +48,7 @@ export const TRIBE_FIGHTERS = [
|
|
|
49
48
|
description: "Cree que se hará rico mañana. Rápido hablando, frágil si le preguntas qué hace.",
|
|
50
49
|
img: "juan",
|
|
51
50
|
classIds: [TRIBE_TYPE_IDS.HIPPIE],
|
|
52
|
-
baseStats: makeStats(
|
|
51
|
+
baseStats: makeStats(70, 80, 70, 5),
|
|
53
52
|
recommendedMoves: [],
|
|
54
53
|
},
|
|
55
54
|
{
|
|
@@ -58,7 +57,7 @@ export const TRIBE_FIGHTERS = [
|
|
|
58
57
|
description: "Cree que se hará rico mañana. Rápido hablando, frágil si le preguntas qué hace.",
|
|
59
58
|
img: "simon_y_silvia",
|
|
60
59
|
classIds: [TRIBE_TYPE_IDS.FIESTERO],
|
|
61
|
-
baseStats: makeStats(
|
|
60
|
+
baseStats: makeStats(75, 75, 55, 5),
|
|
62
61
|
recommendedMoves: [],
|
|
63
62
|
},
|
|
64
63
|
{
|
|
@@ -67,7 +66,7 @@ export const TRIBE_FIGHTERS = [
|
|
|
67
66
|
description: "Cree que se hará rico mañana. Rápido hablando, frágil si le preguntas qué hace.",
|
|
68
67
|
img: "king_kasta",
|
|
69
68
|
classIds: [TRIBE_TYPE_IDS.ARTISTA, TRIBE_TYPE_IDS.KINKI],
|
|
70
|
-
baseStats: makeStats(
|
|
69
|
+
baseStats: makeStats(80, 70, 75, 5),
|
|
71
70
|
recommendedMoves: [],
|
|
72
71
|
},
|
|
73
72
|
{
|
|
@@ -76,7 +75,7 @@ export const TRIBE_FIGHTERS = [
|
|
|
76
75
|
description: "Cree que se hará rico mañana. Rápido hablando, frágil si le preguntas qué hace.",
|
|
77
76
|
img: "metrika",
|
|
78
77
|
classIds: [TRIBE_TYPE_IDS.ARTISTA, TRIBE_TYPE_IDS.CHULETA],
|
|
79
|
-
baseStats: makeStats(
|
|
78
|
+
baseStats: makeStats(80, 70, 75, 5),
|
|
80
79
|
recommendedMoves: [],
|
|
81
80
|
},
|
|
82
81
|
{
|
|
@@ -85,7 +84,7 @@ export const TRIBE_FIGHTERS = [
|
|
|
85
84
|
description: "Cree que se hará rico mañana. Rápido hablando, frágil si le preguntas qué hace.",
|
|
86
85
|
img: "chechu",
|
|
87
86
|
classIds: [TRIBE_TYPE_IDS.MISTERIOSO],
|
|
88
|
-
baseStats: makeStats(
|
|
87
|
+
baseStats: makeStats(75, 75, 81, 5),
|
|
89
88
|
recommendedMoves: [],
|
|
90
89
|
},
|
|
91
90
|
{
|
|
@@ -94,7 +93,7 @@ export const TRIBE_FIGHTERS = [
|
|
|
94
93
|
description: "Cree que se hará rico mañana. Rápido hablando, frágil si le preguntas qué hace.",
|
|
95
94
|
img: "vika",
|
|
96
95
|
classIds: [TRIBE_TYPE_IDS.MISTERIOSO, TRIBE_TYPE_IDS.HIPPIE],
|
|
97
|
-
baseStats: makeStats(
|
|
96
|
+
baseStats: makeStats(75, 75, 75, 5),
|
|
98
97
|
recommendedMoves: [],
|
|
99
98
|
},
|
|
100
99
|
{
|
|
@@ -103,7 +102,7 @@ export const TRIBE_FIGHTERS = [
|
|
|
103
102
|
description: "Cree que se hará rico mañana. Rápido hablando, frágil si le preguntas qué hace.",
|
|
104
103
|
img: "yung_beef",
|
|
105
104
|
classIds: [TRIBE_TYPE_IDS.ARTISTA, TRIBE_TYPE_IDS.HIPPIE],
|
|
106
|
-
baseStats: makeStats(
|
|
105
|
+
baseStats: makeStats(80, 70, 75, 5),
|
|
107
106
|
recommendedMoves: [],
|
|
108
107
|
},
|
|
109
108
|
{
|
|
@@ -112,7 +111,7 @@ export const TRIBE_FIGHTERS = [
|
|
|
112
111
|
description: "Cree que se hará rico mañana. Rápido hablando, frágil si le preguntas qué hace.",
|
|
113
112
|
img: "velas",
|
|
114
113
|
classIds: [TRIBE_TYPE_IDS.DEPORTISTA, TRIBE_TYPE_IDS.FIESTERO],
|
|
115
|
-
baseStats: makeStats(
|
|
114
|
+
baseStats: makeStats(70, 80, 75, 10),
|
|
116
115
|
recommendedMoves: [],
|
|
117
116
|
},
|
|
118
117
|
{
|
|
@@ -121,7 +120,7 @@ export const TRIBE_FIGHTERS = [
|
|
|
121
120
|
description: "Cree que se hará rico mañana. Rápido hablando, frágil si le preguntas qué hace.",
|
|
122
121
|
img: "modric_shaolin",
|
|
123
122
|
classIds: [TRIBE_TYPE_IDS.MISTERIOSO],
|
|
124
|
-
baseStats: makeStats(
|
|
123
|
+
baseStats: makeStats(85, 65, 90, 5),
|
|
125
124
|
recommendedMoves: [],
|
|
126
125
|
},
|
|
127
126
|
{
|
|
@@ -130,7 +129,7 @@ export const TRIBE_FIGHTERS = [
|
|
|
130
129
|
description: "Cree que se hará rico mañana. Rápido hablando, frágil si le preguntas qué hace.",
|
|
131
130
|
img: "lorena",
|
|
132
131
|
classIds: [TRIBE_TYPE_IDS.NERD, TRIBE_TYPE_IDS.HIPPIE],
|
|
133
|
-
baseStats: makeStats(
|
|
132
|
+
baseStats: makeStats(75, 75, 75, 10),
|
|
134
133
|
recommendedMoves: [],
|
|
135
134
|
},
|
|
136
135
|
{
|
|
@@ -139,7 +138,7 @@ export const TRIBE_FIGHTERS = [
|
|
|
139
138
|
description: "Cree que se hará rico mañana. Rápido hablando, frágil si le preguntas qué hace.",
|
|
140
139
|
img: "juarez",
|
|
141
140
|
classIds: [TRIBE_TYPE_IDS.NERD, TRIBE_TYPE_IDS.FIESTERO],
|
|
142
|
-
baseStats: makeStats(
|
|
141
|
+
baseStats: makeStats(75, 75, 75, 10),
|
|
143
142
|
recommendedMoves: [],
|
|
144
143
|
},
|
|
145
144
|
{
|
|
@@ -148,7 +147,7 @@ export const TRIBE_FIGHTERS = [
|
|
|
148
147
|
description: "Cree que se hará rico mañana. Rápido hablando, frágil si le preguntas qué hace.",
|
|
149
148
|
img: "currito",
|
|
150
149
|
classIds: [TRIBE_TYPE_IDS.DEPORTISTA, TRIBE_TYPE_IDS.FIESTERO],
|
|
151
|
-
baseStats: makeStats(
|
|
150
|
+
baseStats: makeStats(75, 75, 75, 10),
|
|
152
151
|
recommendedMoves: [],
|
|
153
152
|
},
|
|
154
153
|
{
|
|
@@ -157,7 +156,7 @@ export const TRIBE_FIGHTERS = [
|
|
|
157
156
|
description: "Cree que se hará rico mañana. Rápido hablando, frágil si le preguntas qué hace.",
|
|
158
157
|
img: "angel",
|
|
159
158
|
classIds: [TRIBE_TYPE_IDS.NERD, TRIBE_TYPE_IDS.FORMAL],
|
|
160
|
-
baseStats: makeStats(
|
|
159
|
+
baseStats: makeStats(75, 75, 75, 10),
|
|
161
160
|
recommendedMoves: [],
|
|
162
161
|
},
|
|
163
162
|
{
|
|
@@ -166,7 +165,7 @@ export const TRIBE_FIGHTERS = [
|
|
|
166
165
|
description: "Cree que se hará rico mañana. Rápido hablando, frágil si le preguntas qué hace.",
|
|
167
166
|
img: "ctangana",
|
|
168
167
|
classIds: [TRIBE_TYPE_IDS.ARTISTA, TRIBE_TYPE_IDS.FORMAL],
|
|
169
|
-
baseStats: makeStats(
|
|
168
|
+
baseStats: makeStats(75, 75, 75, 5),
|
|
170
169
|
recommendedMoves: [],
|
|
171
170
|
},
|
|
172
171
|
{
|
|
@@ -175,7 +174,7 @@ export const TRIBE_FIGHTERS = [
|
|
|
175
174
|
description: "Cree que se hará rico mañana. Rápido hablando, frágil si le preguntas qué hace.",
|
|
176
175
|
img: "duran",
|
|
177
176
|
classIds: [TRIBE_TYPE_IDS.FIESTERO],
|
|
178
|
-
baseStats: makeStats(
|
|
177
|
+
baseStats: makeStats(75, 75, 75, 5),
|
|
179
178
|
recommendedMoves: [],
|
|
180
179
|
},
|
|
181
180
|
{
|
|
@@ -184,7 +183,7 @@ export const TRIBE_FIGHTERS = [
|
|
|
184
183
|
description: "Cree que se hará rico mañana. Rápido hablando, frágil si le preguntas qué hace.",
|
|
185
184
|
img: "ferchy",
|
|
186
185
|
classIds: [TRIBE_TYPE_IDS.NERD, TRIBE_TYPE_IDS.FIESTERO],
|
|
187
|
-
baseStats: makeStats(
|
|
186
|
+
baseStats: makeStats(75, 75, 75, 10),
|
|
188
187
|
recommendedMoves: [],
|
|
189
188
|
},
|
|
190
189
|
{
|
|
@@ -193,7 +192,7 @@ export const TRIBE_FIGHTERS = [
|
|
|
193
192
|
description: "Cree que se hará rico mañana. Rápido hablando, frágil si le preguntas qué hace.",
|
|
194
193
|
img: "hector",
|
|
195
194
|
classIds: [TRIBE_TYPE_IDS.NERD, TRIBE_TYPE_IDS.DEPORTISTA],
|
|
196
|
-
baseStats: makeStats(
|
|
195
|
+
baseStats: makeStats(75, 75, 75, 5),
|
|
197
196
|
recommendedMoves: [],
|
|
198
197
|
},
|
|
199
198
|
{
|
|
@@ -202,7 +201,7 @@ export const TRIBE_FIGHTERS = [
|
|
|
202
201
|
description: "Cree que se hará rico mañana. Rápido hablando, frágil si le preguntas qué hace.",
|
|
203
202
|
img: "melendi",
|
|
204
203
|
classIds: [TRIBE_TYPE_IDS.ARTISTA, TRIBE_TYPE_IDS.HIPPIE],
|
|
205
|
-
baseStats: makeStats(
|
|
204
|
+
baseStats: makeStats(75, 75, 75, 5),
|
|
206
205
|
recommendedMoves: [],
|
|
207
206
|
},
|
|
208
207
|
{
|
|
@@ -211,7 +210,7 @@ export const TRIBE_FIGHTERS = [
|
|
|
211
210
|
description: "Cree que se hará rico mañana. Rápido hablando, frágil si le preguntas qué hace.",
|
|
212
211
|
img: "selene",
|
|
213
212
|
classIds: [TRIBE_TYPE_IDS.HIPPIE, TRIBE_TYPE_IDS.MISTICO],
|
|
214
|
-
baseStats: makeStats(
|
|
213
|
+
baseStats: makeStats(75, 75, 75, 5),
|
|
215
214
|
recommendedMoves: [],
|
|
216
215
|
},
|
|
217
216
|
{
|
|
@@ -220,7 +219,7 @@ export const TRIBE_FIGHTERS = [
|
|
|
220
219
|
description: "Cree que se hará rico mañana. Rápido hablando, frágil si le preguntas qué hace.",
|
|
221
220
|
img: "tabara",
|
|
222
221
|
classIds: [TRIBE_TYPE_IDS.MISTERIOSO],
|
|
223
|
-
baseStats: makeStats(
|
|
222
|
+
baseStats: makeStats(50, 80, 60, 5),
|
|
224
223
|
recommendedMoves: [],
|
|
225
224
|
},
|
|
226
225
|
{
|
|
@@ -229,7 +228,7 @@ export const TRIBE_FIGHTERS = [
|
|
|
229
228
|
description: "Cree que se hará rico mañana. Rápido hablando, frágil si le preguntas qué hace.",
|
|
230
229
|
img: "tsunami",
|
|
231
230
|
classIds: [TRIBE_TYPE_IDS.FORMAL],
|
|
232
|
-
baseStats: makeStats(
|
|
231
|
+
baseStats: makeStats(75, 75, 80, 5),
|
|
233
232
|
recommendedMoves: [],
|
|
234
233
|
},
|
|
235
234
|
{
|
|
@@ -238,7 +237,7 @@ export const TRIBE_FIGHTERS = [
|
|
|
238
237
|
description: "Cree que se hará rico mañana. Rápido hablando, frágil si le preguntas qué hace.",
|
|
239
238
|
img: "badgyal",
|
|
240
239
|
classIds: [TRIBE_TYPE_IDS.CHULETA, TRIBE_TYPE_IDS.ARTISTA],
|
|
241
|
-
baseStats: makeStats(
|
|
240
|
+
baseStats: makeStats(75, 75, 75, 5),
|
|
242
241
|
recommendedMoves: [],
|
|
243
242
|
},
|
|
244
243
|
{
|
|
@@ -247,7 +246,7 @@ export const TRIBE_FIGHTERS = [
|
|
|
247
246
|
description: "Cree que se hará rico mañana. Rápido hablando, frágil si le preguntas qué hace.",
|
|
248
247
|
img: "benyart",
|
|
249
248
|
classIds: [TRIBE_TYPE_IDS.ARTISTA, TRIBE_TYPE_IDS.MISTERIOSO],
|
|
250
|
-
baseStats: makeStats(
|
|
249
|
+
baseStats: makeStats(80, 70, 78, 5),
|
|
251
250
|
recommendedMoves: [],
|
|
252
251
|
},
|
|
253
252
|
{
|
|
@@ -256,7 +255,7 @@ export const TRIBE_FIGHTERS = [
|
|
|
256
255
|
description: "Cree que se hará rico mañana. Rápido hablando, frágil si le preguntas qué hace.",
|
|
257
256
|
img: "ceciliog",
|
|
258
257
|
classIds: [TRIBE_TYPE_IDS.ARTISTA, TRIBE_TYPE_IDS.LOCO],
|
|
259
|
-
baseStats: makeStats(
|
|
258
|
+
baseStats: makeStats(80, 70, 75, 5),
|
|
260
259
|
recommendedMoves: [],
|
|
261
260
|
},
|
|
262
261
|
{
|
|
@@ -265,7 +264,7 @@ export const TRIBE_FIGHTERS = [
|
|
|
265
264
|
description: "Cree que se hará rico mañana. Rápido hablando, frágil si le preguntas qué hace.",
|
|
266
265
|
img: "delgao",
|
|
267
266
|
classIds: [TRIBE_TYPE_IDS.ARTISTA, TRIBE_TYPE_IDS.KINKI],
|
|
268
|
-
baseStats: makeStats(
|
|
267
|
+
baseStats: makeStats(75, 75, 75, 5),
|
|
269
268
|
recommendedMoves: [],
|
|
270
269
|
},
|
|
271
270
|
{
|
|
@@ -274,7 +273,7 @@ export const TRIBE_FIGHTERS = [
|
|
|
274
273
|
description: "Cree que se hará rico mañana. Rápido hablando, frágil si le preguntas qué hace.",
|
|
275
274
|
img: "jarfaiter",
|
|
276
275
|
classIds: [TRIBE_TYPE_IDS.KINKI, TRIBE_TYPE_IDS.ARTISTA],
|
|
277
|
-
baseStats: makeStats(
|
|
276
|
+
baseStats: makeStats(81, 75, 80, 5),
|
|
278
277
|
recommendedMoves: [],
|
|
279
278
|
},
|
|
280
279
|
{
|
|
@@ -283,7 +282,7 @@ export const TRIBE_FIGHTERS = [
|
|
|
283
282
|
description: "Cree que se hará rico mañana. Rápido hablando, frágil si le preguntas qué hace.",
|
|
284
283
|
img: "ñengo",
|
|
285
284
|
classIds: [TRIBE_TYPE_IDS.ARTISTA, TRIBE_TYPE_IDS.CHULETA],
|
|
286
|
-
baseStats: makeStats(
|
|
285
|
+
baseStats: makeStats(70, 80, 75, 5),
|
|
287
286
|
recommendedMoves: [],
|
|
288
287
|
},
|
|
289
288
|
{
|
|
@@ -292,7 +291,7 @@ export const TRIBE_FIGHTERS = [
|
|
|
292
291
|
description: "Cree que se hará rico mañana. Rápido hablando, frágil si le preguntas qué hace.",
|
|
293
292
|
img: "portero_misterioso",
|
|
294
293
|
classIds: [TRIBE_TYPE_IDS.MISTERIOSO],
|
|
295
|
-
baseStats: makeStats(
|
|
294
|
+
baseStats: makeStats(80, 65, 85, 5),
|
|
296
295
|
recommendedMoves: [],
|
|
297
296
|
},
|
|
298
297
|
{
|
|
@@ -301,7 +300,7 @@ export const TRIBE_FIGHTERS = [
|
|
|
301
300
|
description: "Cree que se hará rico mañana. Rápido hablando, frágil si le preguntas qué hace.",
|
|
302
301
|
img: "ed_gein",
|
|
303
302
|
classIds: [TRIBE_TYPE_IDS.LOCO],
|
|
304
|
-
baseStats: makeStats(
|
|
303
|
+
baseStats: makeStats(75, 75, 75, 5),
|
|
305
304
|
recommendedMoves: [],
|
|
306
305
|
},
|
|
307
306
|
{
|
|
@@ -310,7 +309,34 @@ export const TRIBE_FIGHTERS = [
|
|
|
310
309
|
description: "Cree que se hará rico mañana. Rápido hablando, frágil si le preguntas qué hace.",
|
|
311
310
|
img: "jose_breton",
|
|
312
311
|
classIds: [TRIBE_TYPE_IDS.LOCO],
|
|
313
|
-
baseStats: makeStats(
|
|
312
|
+
baseStats: makeStats(75, 75, 75, 5),
|
|
313
|
+
recommendedMoves: [],
|
|
314
|
+
},
|
|
315
|
+
{
|
|
316
|
+
id: TRIBE_FIGHTER_IDS.RUPER,
|
|
317
|
+
name: "Ruper",
|
|
318
|
+
description: "Cree que se hará rico mañana. Rápido hablando, frágil si le preguntas qué hace.",
|
|
319
|
+
img: "ruper",
|
|
320
|
+
classIds: [TRIBE_TYPE_IDS.FIESTERO, TRIBE_TYPE_IDS.HIPPIE],
|
|
321
|
+
baseStats: makeStats(75, 75, 75, 5),
|
|
322
|
+
recommendedMoves: [],
|
|
323
|
+
},
|
|
324
|
+
{
|
|
325
|
+
id: TRIBE_FIGHTER_IDS.JESUCRISTO,
|
|
326
|
+
name: "Jesus Cristo",
|
|
327
|
+
description: "Cree que se hará rico mañana. Rápido hablando, frágil si le preguntas qué hace.",
|
|
328
|
+
img: "jesucristo",
|
|
329
|
+
classIds: [TRIBE_TYPE_IDS.MISTERIOSO, TRIBE_TYPE_IDS.FORMAL],
|
|
330
|
+
baseStats: makeStats(75, 75, 75, 5),
|
|
331
|
+
recommendedMoves: [],
|
|
332
|
+
},
|
|
333
|
+
{
|
|
334
|
+
id: TRIBE_FIGHTER_IDS.PEDRO_SANCHEZ,
|
|
335
|
+
name: "Pedro Sanchez",
|
|
336
|
+
description: "Cree que se hará rico mañana. Rápido hablando, frágil si le preguntas qué hace.",
|
|
337
|
+
img: "pedro_sanchez",
|
|
338
|
+
classIds: [TRIBE_TYPE_IDS.MISTERIOSO],
|
|
339
|
+
baseStats: makeStats(75, 75, 75, 5),
|
|
314
340
|
recommendedMoves: [],
|
|
315
341
|
}
|
|
316
342
|
];
|
|
@@ -9,6 +9,9 @@ export const TRIBE_MOVES = [
|
|
|
9
9
|
priority: 0,
|
|
10
10
|
effects: [
|
|
11
11
|
{ kind: "damage", basePower: 30 },
|
|
12
|
+
],
|
|
13
|
+
narration: [
|
|
14
|
+
"{actor} le da un tortazo a {victim} con la mano abierta."
|
|
12
15
|
]
|
|
13
16
|
},
|
|
14
17
|
{
|
|
@@ -20,7 +23,11 @@ export const TRIBE_MOVES = [
|
|
|
20
23
|
priority: 0,
|
|
21
24
|
effects: [
|
|
22
25
|
{ kind: "damage", basePower: 40 },
|
|
23
|
-
{ kind: "damage", flatAmount: 10, target: "self" }
|
|
26
|
+
{ kind: "damage", flatAmount: 10, target: "self" },
|
|
27
|
+
],
|
|
28
|
+
narration: [
|
|
29
|
+
"{actor} le da un puñetazo a {victim} en los dientes.",
|
|
30
|
+
"Ambos se hacen daño..."
|
|
24
31
|
]
|
|
25
32
|
},
|
|
26
33
|
{
|
|
@@ -33,6 +40,10 @@ export const TRIBE_MOVES = [
|
|
|
33
40
|
effects: [
|
|
34
41
|
{ kind: 'heal', amount: 10 },
|
|
35
42
|
{ kind: 'modify_stats', defenseDelta: 1, offenseDelta: 1 }
|
|
43
|
+
],
|
|
44
|
+
narration: [
|
|
45
|
+
"{actor} se pone a hacer un poco de deporte.",
|
|
46
|
+
"Parece que le viene bien..."
|
|
36
47
|
]
|
|
37
48
|
},
|
|
38
49
|
{
|
|
@@ -45,6 +56,10 @@ export const TRIBE_MOVES = [
|
|
|
45
56
|
effects: [
|
|
46
57
|
{ kind: "heal", amount: 35 },
|
|
47
58
|
{ kind: "modify_stats", speedDelta: -1, offenseDelta: 1 }
|
|
59
|
+
],
|
|
60
|
+
narration: [
|
|
61
|
+
"{actor} se frota las partes íntimas",
|
|
62
|
+
"Parece que le gusta...",
|
|
48
63
|
]
|
|
49
64
|
},
|
|
50
65
|
{
|
|
@@ -58,6 +73,10 @@ export const TRIBE_MOVES = [
|
|
|
58
73
|
effects: [
|
|
59
74
|
{ kind: "damage", basePower: 30 },
|
|
60
75
|
{ kind: "heal", amount: 10 },
|
|
76
|
+
],
|
|
77
|
+
narration: [
|
|
78
|
+
"{actor} tiene un apretón y tiene que ir al baño.",
|
|
79
|
+
"Esperemos que no esté ocupado..."
|
|
61
80
|
]
|
|
62
81
|
},
|
|
63
82
|
{
|
|
@@ -70,6 +89,9 @@ export const TRIBE_MOVES = [
|
|
|
70
89
|
effects: [
|
|
71
90
|
{ kind: "damage", flatAmount: 10, target: "self" },
|
|
72
91
|
{ kind: "modify_stats", speedDelta: 1, defenseDelta: 1, offenseDelta: 1 }
|
|
92
|
+
],
|
|
93
|
+
narration: [
|
|
94
|
+
"{actor} se ha puesto a fumar un cigarro...",
|
|
73
95
|
]
|
|
74
96
|
},
|
|
75
97
|
{
|
|
@@ -83,6 +105,10 @@ export const TRIBE_MOVES = [
|
|
|
83
105
|
{ kind: "damage", basePower: 40 },
|
|
84
106
|
{ kind: "damage", flatAmount: 10, target: "self" },
|
|
85
107
|
{ kind: "apply_status", statusId: TRIBE_STATUS_IDS.ESTUDIAR, target: "self", chance: 0.5 },
|
|
108
|
+
],
|
|
109
|
+
narration: [
|
|
110
|
+
"{actor} estudia al rival...",
|
|
111
|
+
"Parece que le viene bien..."
|
|
86
112
|
]
|
|
87
113
|
},
|
|
88
114
|
{
|
|
@@ -143,6 +169,11 @@ export const TRIBE_MOVES = [
|
|
|
143
169
|
{ kind: "damage", basePower: 20 },
|
|
144
170
|
{ kind: "heal", amount: 20 },
|
|
145
171
|
{ kind: 'apply_status', statusId: TRIBE_STATUS_IDS.RESACA, target: 'self', chance: 0.5 }
|
|
172
|
+
],
|
|
173
|
+
narration: [
|
|
174
|
+
"{actor}: Maricón el que deje algo...",
|
|
175
|
+
"{actor} y {victim} se terminan la copa de un trago",
|
|
176
|
+
"No les afecta por igual..."
|
|
146
177
|
]
|
|
147
178
|
},
|
|
148
179
|
{
|
|
@@ -224,9 +255,8 @@ export const TRIBE_MOVES = [
|
|
|
224
255
|
typeId: TRIBE_TYPE_IDS.ARTISTA,
|
|
225
256
|
accuracy: 100,
|
|
226
257
|
maxPP: 6,
|
|
227
|
-
priority:
|
|
258
|
+
priority: -1,
|
|
228
259
|
effects: [
|
|
229
|
-
{ kind: "damage", basePower: 20 },
|
|
230
260
|
{ kind: 'force_switch' }
|
|
231
261
|
]
|
|
232
262
|
},
|
|
@@ -297,7 +327,7 @@ export const TRIBE_MOVES = [
|
|
|
297
327
|
id: TRIBE_MOVE_IDS.HACHAZO_TOBILLERO,
|
|
298
328
|
name: "Hachazo tobillero",
|
|
299
329
|
typeId: TRIBE_TYPE_IDS.LOCO,
|
|
300
|
-
accuracy:
|
|
330
|
+
accuracy: 50,
|
|
301
331
|
maxPP: 3,
|
|
302
332
|
priority: 0,
|
|
303
333
|
onlyForFighterIds: [TRIBE_FIGHTER_IDS.ED_GEIN],
|
|
@@ -341,6 +371,47 @@ export const TRIBE_MOVES = [
|
|
|
341
371
|
effects: [
|
|
342
372
|
{ kind: "damage", basePower: 40 },
|
|
343
373
|
{ kind: 'modify_stats', offenseDelta: -1, target: 'enemy' }
|
|
374
|
+
],
|
|
375
|
+
narration: [
|
|
376
|
+
"{actor}: Y el airee de la callee...!!",
|
|
377
|
+
"{actor} desafina bastante y daña los oídos de {victim}"
|
|
378
|
+
]
|
|
379
|
+
},
|
|
380
|
+
{
|
|
381
|
+
id: TRIBE_MOVE_IDS.SIESTA_INFINITA,
|
|
382
|
+
name: "Siesta infinita",
|
|
383
|
+
typeId: TRIBE_TYPE_IDS.FORMAL,
|
|
384
|
+
accuracy: 100,
|
|
385
|
+
maxPP: 3,
|
|
386
|
+
priority: 0,
|
|
387
|
+
onlyForFighterIds: [TRIBE_FIGHTER_IDS.RUPER],
|
|
388
|
+
effects: [
|
|
389
|
+
{ kind: "heal", amount: 40 },
|
|
390
|
+
{ kind: 'modify_stats', offenseDelta: -1, speedDelta: -1, target: 'self' },
|
|
391
|
+
],
|
|
392
|
+
narration: [
|
|
393
|
+
"{actor}: Me voy a dormir...",
|
|
394
|
+
"zzz...",
|
|
395
|
+
"zzz...",
|
|
396
|
+
"zzz...",
|
|
397
|
+
"3 años después {actor} se despierta renovado"
|
|
398
|
+
]
|
|
399
|
+
},
|
|
400
|
+
{
|
|
401
|
+
id: TRIBE_MOVE_IDS.POTA_ACIDA,
|
|
402
|
+
name: "Pota ácida",
|
|
403
|
+
typeId: TRIBE_TYPE_IDS.FIESTERO,
|
|
404
|
+
accuracy: 100,
|
|
405
|
+
maxPP: 3,
|
|
406
|
+
priority: 0,
|
|
407
|
+
onlyForFighterIds: [TRIBE_FIGHTER_IDS.RUPER],
|
|
408
|
+
effects: [
|
|
409
|
+
{ kind: "damage", basePower: 40 },
|
|
410
|
+
{ kind: 'modify_stats', offenseDelta: -1, target: 'enemy' }
|
|
411
|
+
],
|
|
412
|
+
narration: [
|
|
413
|
+
"Algo ha sentado mal a {actor}",
|
|
414
|
+
"{actor} le vomita en la cara a {victim}"
|
|
344
415
|
]
|
|
345
416
|
},
|
|
346
417
|
];
|