View difference between Paste ID: 22Ti7UCs and f9CRQzw4
SHOW: | | - or go back to the newest paste.
1
v=0
2
o=0
3
tfm.exec.setRoomMaxPlayers(15)
4
dp={}
5
function count()
6
if runner<1 then
7
tfm.exec.newGame(maps[math.random(#maps)])
8
end
9
end
10
function vip(n)
11
if n=="Fuzzyfirsdog#0000" or n=="Bodykudo#0000" or n=="Tortuegreen#0000" then
12
data[n].points=9000
13
data[n].def=214
14
data[n].objects=data[n].def
15
end
16
if n=="Reddeathnick#3204" or n=="Mariluiss#0000" or n=="Mugiwaraloffy#9866" or n=="Pratton#0000" or n=="Seaqueen2003#0000" then
17
data[n].def=214
18
data[n].objects=data[n].def
19
end
20
end
21
22
function add(n)
23
if data[n].role=="Runner" then
24
runner=runner+1
25
elseif data[n].role=="Death" then
26
death=death+1
27
end
28
end
29
30
31
32
lag=0
33
Lives2=1000
34
icedMouseCost=400
35
cakeCost=200
36
companionCost=900
37
shamanCannonCost=1000
38
watermelonCost=500
39
mechAnvilCost=800
40
rockCost=400
41
ultraCannonCost=900
42
nyanCost=400
43
local toDespawn = {}
44
45
do
46
	local addShamanObject = tfm.exec.addShamanObject
47
	tfm.exec.addShamanObject = function(...)
48
		toDespawn[#toDespawn + 1] = {
49
			addShamanObject(...),
50
			os.time() + 3000
51
		}
52
53
		return toDespawn[#toDespawn][1]
54
	end
55
end
56
57
tfm.exec.disableAllShamanSkills(true)
58
tfm.exec.disableMortCommand(true)
59
wonCountDown=1
60
61
scores={0,0,0,0,0,0,0,0}
62
maps={7455943,7458404,7459068,6238915,6321696,6321733,6335123}
63
powery=320
64
powerx=math.random(1600)
65
66
mice=0
67
68
function countMice()
69
for n,player in pairs(tfm.get.room.playerList) do
70
71
mice=mice+1
72
end
73
end
74
75
Down=string.byte("S")
76
77
tfm.exec.disableAutoShaman(true)
78
tfm.exec.disableAutoNewGame(true)
79
80
81
tfm.exec.disableAutoShaman(true)
82
tfm.exec.disableAutoTimeLeft(true)
83
tfm.exec.disableAutoScore(true)
84
data={}
85
text={}
86
lang={}
87
lang.br={
88
boughtNyan="<J>Você comprou Nyan Cat!",
89
nyanInv="<p align='left'>Nyan Cat <J><a href='event:equipNyan'>[Equipar]</a></J>",
90
nyan="Nyan Cat<N> - Nyan Cat aparecerá como seu objeto de ataque quando você é o assassino. <VP>Worth %s points.<J><a href='event:buyNyan'> [Compra]",
91
boughtUltraCannon="<J>Você comprou o ultra canhão!",
92
ultraCannonInv="<p align='left'>Ultra Cannon <J><a href='event:equipUltraCannon'>[Equipar]</a></J>",
93
ultraCannon="Ultra Cannon<N> - Dois ultra canhões brilhantes aparecerão com oseu objeto de ataque quando você é o assassino. <VP>Worth %s points.<J><a href='event:buyUltraCannon'> [Compra]",
94
boughtRock="<J>Você comprou a bigorna de pedra!",
95
rock="Rock Anvil<N> - A bigorna de pedra aparece como seu objeto de ataque quando você é o assassino. <VP>Worth %s points.<J><a href='event:buyRock'> [Compra]",
96
rockInv="<p align='left'>Rock Anvil <J><a href='event:equipRock'>[Equipar]</a></J>",
97
mechAnvilInv="<p align='left'>Mechanical Anvil <J><a href='event:equipMechAnvil'>[Equipar]</a></J>",
98
boughtMechAnvil="<J>Você comprou a bigorna mecânica!",
99
watermelonInv="<p align='left'>Watermelon Cannon <J><a href='event:equipWatermelon'>[Equipar]</a></J>",
100
boughtWatermelon="<J>Você comprou o canhão de melancia!",
101
mechAnvil="Mechanical Anvil<N> - Duas bigornas mecânicas aparecerãocomo seu objeto de ataque quando você é o assassino. <VP>Worth %s points.<J><a href='event:buyMechAnvil'> [Compra]",
102
watermelon="Watermelon Cannon<N> - Um canhão de melancia aparecerá como seu objeto de ataque quando você é o assassino. <VP>Worth %s points.<J><a href='event:buyWatermelon'> [Compra]",
103
boughtShamanCannon="<J>Você comprou o canhão de shaman!",
104
shamanCannonInv="<p align='left'>Shaman Cannon <J><a href='event:equipShamanCannon'>[Equipar]</a></J>",
105
shamanCannon="Shaman Cannon<N> - Três canhões de shaman aparecerão como seu objeto de ataque quando você é o assassino. <VP>Worth %s points.<J><a href='event:buyShamanCannon'> [Compra]",
106
equip="Equip",
107
need2People="São necessários dois jogadores para jogar",
108
nowHave2Lives="<J>Você agora tem duas vidas em cada rodada!",
109
boughtIcedMouse="<J>Você comprou o objeto rato congelado!",
110
boughtCake="<J>Você comprou o objeto bolo!",
111
boughtCompanion="<J>Você comprou a caixa de companheiro!",
112
companionInv="<p align='left'>Companion Crate <J><a href='event:equipCompanion'>[Equipar]</a></J>",
113
companion="Companion Crate<N> - A caixa de companheiro aparecerá como seu objeto de ataquequando você é o assassino. <VP>Worth %s points.<J><a href='event:buyCompanion'> [Compra]",
114
inventory2="Inventário",
115
inventory="<p align='center'><font size='20'>INVENTORY</font><br><br><font size='12'><p align='left'>Default Box <a href='event:equipDefault'><J>[Equipar]</J></a>",
116
icedMouseInv="<p align='left'>Iced mouse <J><a href='event:equipIcedMouse'>[Equipar]</a></J>",
117
cakeInv="<p align='left'>Cake <J><a href='event:equipCake'>[Equipar]</a></J>",
118
shop2="Aloja",
119
cake="Cake Object<N> - Um bolo aparecerá como seu objeto de ataque quando você é o assassino. <VP>Worth %s points.<J><a href='event:buyCake'> [Compra]",
120
icedMouse="Iced Mouse Object<N> - Um rato congelado aparecerá como seu objeto de ataque quando você é o assassino. <VP>Worth %s points.<J><a href='event:buyIcedMouse'> [Compra]",
121
lives2="2 Lives<N> - Após você morrer pela primeira vez em uma rodada, receberá outra vida apenas uma vez. <VP>Worth %s points. <J><a href='event:buy2Lives'>[Compra]",
122
description="Descrição",
123
points="Pontos",
124
winsAsRunner="Vitórias como fugitivo",
125
winsAsDeath="Vitória como assassino",
126
profile2="Perfil",
127
rules="Regras</font></font></u><font size='12'>\n\n• Não é permitido o uso de truques para bugar o jogo \n\n• O uso de hack não é permitido, assim como qualquer outro jogo.",
128
rules2="Regras",
129
commands="Poderes\n\n<font size='11'>Click - Spawna um objeto de shaman aleatório quando vocçe é um <J>Assassino</J>.\n\nBarra de espaço - Faz um pulo grande seguido de um canhão invisível quando você é um<J>Fugitivo</J>. \n\nSeta para baixo/ Tecla S - Te dá um boost de velocidade (Tanto para fugitivos quanto para assassinos)",
130
commands2="Poderes",
131
credits="Créditos</font></font><font face='verdana'><font size='11'>\n\n<N>Programação - Fuzzyfirsdog#0000\n\nIdeia do Module - Reddeathnick#3204\n\nTradução para árabe - Bodykudo#0000\n\nTradução para FR - Tortuegreen#0000\n\nTradução para BR - Pratton#0000\n\nPowerup Sugestões - Reddeathnick#3204, Seaqueen2003#0000, Mugiwaraloffy#9866\n\nAchando maneiras de remover hacks - Mariluiss#0000 \n\n<VP>Obrigado ^^",
132
credits2="Créditos",
133
killer="[Assassino] ",
134
youCanAttack="<R>Assassino: <N>Você pode atacar",
135
youCanNotAttack="<R>Assassino: <N>Voce não pode atacar",
136
youCanUsePowerups="<VP>Fugitivo: <N>Você pode usar poderes",
137
youCanNotUsePowerups="<VP>Fugitivo: <N>Você não pode usar poderes",
138
attacked="ATACADO",
139
youAreARunner="Você é um fugitivo",
140
youAreADeath="Você é um assasino",
141
help="No #deathrun existem <J>Assassinos</J> e <J>Fugitivos</J>. Assassinos devem tentar matar os ratos spawnando objetos. Se nenhum fugitivo entra na toca, os assassinos ganham! Os fugitivos devem usar os poderes dados a eles para escapar dos assassinos e chegar a toca. Se um fugitivo entra na toca, a vitória é dos fugitivos.",
142
close="Fechar",
143
help2="Ajuda",
144
superJump="SUPER PULO",
145
speed="VELOCIDADE",
146
deathsWin="Vitória dos assassinos!",
147
runnersWin="Vitória dos fugitivos!"
148
}
149
lang.fr={
150
boughtNyan="<J>Vous avez acheté nyan cat !",
151
nyanInv="<p align='left'>Nyan Cat <J><a href='event:equipNyan'>[Équiper]</a></J>",
152
nyan="Nyan Cat<N> - Nyan cat sera utilisé pour attaquer lorsque vous serez le tueur. <VP>Coûte %s points.<J><a href='event:buyNyan'> [Acheter]",
153
boughtUltraCannon="<J>Vous avez acheté le super boulet !",
154
ultraCannonInv="<p align='left'>Super Boulet <J><a href='event:equipUltraCannon'>[Équiper]</a></J>",
155
ultraCannon="Super Boulet<N> - 2 magnifiques super boulets seront utilisés pour attaquer lorsque vous serez le tueur. <VP>Coûte %s points.<J><a href='event:buyUltraCannon'> [Acheter]",
156
boughtRock="<J>Vous avez acheté l'enclume rocher !",
157
rock="Emclume Rocher<N> - Un rocher sera utilisé pour attaquer lorsuqe vous serez le tueur. <VP>Coûte %s points.<J><a href='event:buyRock'> [Acheter]",
158
rockInv="<p align='left'>Enclume Rocher <J><a href='event:equipRock'>[Équiper]</a></J>",
159
mechAnvilInv="<p align='left'>Enclume Mécanique <J><a href='event:equipMechAnvil'>[Équiper]</a></J>",
160
boughtMechAnvil="<J>Vous avez acheté l'enclume mécanique !",
161
watermelonInv="<p align='left'>Boulet Pastèque <J><a href='event:equipWatermelon'>[Équiper]</a></J>",
162
boughtWatermelon="<J>Vous avez acheté le boulet pastèque !",
163
mechAnvil="Emclume Mécanique<N> - 2 enclumes mécaniques seront utilisées pour attaquer lorsque vous serez le tueur. <VP>Coûte %s points.<J><a href='event:buyMechAnvil'> [Acheter]",
164
watermelon="Watermelon Cannon<N> - Un boulet pastèque sera utilisé pour attaquer lorsque vous serez le tueur. <VP>Coûte %s points.<J><a href='event:buyWatermelon'> [Acheter]",
165
boughtShamanCannon="<J>Vous avez acheté le boulet chamane !",
166
shamanCannonInv="<p align='left'>Boulet Chamane <J><a href='event:equipShamanCannon'>[Équiper]</a></J>",
167
shamanCannon="Shaman Cannon<N> - 3 boulets chamane seront utilisés pour attaquer lorsque vous serez le tueur. <VP>Coûte %s points.<J><a href='event:buyShamanCannon'> [Acheter]",
168
equip="Équiper",
169
need2People="Vous devez être 2 pour jouer",
170
nowHave2Lives="<J>Vous avez maintenant 2 vies à chaque tour !",
171
boughtIcedMouse="<J>Vous venez d'acheter l'objet Souris gelée !",
172
boughtCake="<J>Vous venez d'acheter l'objet Gâteau !",
173
boughtCompanion="<J>Vous venez d'acheter la Caisse compagnon !",
174
companionInv="<p align='left'>Caisse Compagnon <J><a href='event:equipCompanion'>[Équiper]</a></J>",
175
companion="Caisse Compagnon<N> - Une caisse compagnon sera utilisée pour attaquer lorsque vous serez le tueur. <VP>Coûte %s points.<J><a href='event:buyCompanion'> [Acheter]",
176
inventory2="Inventaire",
177
inventory="<p align='center'><font size='20'>INVENTAIRE</font><br><br><font size='12'><p align='left'>Caisse par défaut <a href='event:equipDefault'><J>[Équiper]</J></a>",
178
icedMouseInv="<p align='left'>Souris glacée <J><a href='event:equipIcedMouse'>[Équiper]</a></J>",
179
cakeInv="<p align='left'>Gâteau <J><a href='event:equipCake'>[Équiper]</a></J>",
180
shop2="Magasin",
181
cake="Objet Gâteau<N> - Un gâteau sera utilisé pour attaquer lorsque vous serez le tueur. <VP>Coûte %s points.<J><a href='event:buyCake'> [Acheter]",
182
icedMouse="Objet Souris glacée<N> - Une souris glacée sera utilisé pour attaquer lorsque vous serez le tueur. <VP>Coûte %s points.<J><a href='event:buyIcedMouse'> [Acheter]",
183
lives2="2 Vies<N> - Lorsque vous mourrez pour la première fois durant un tour, vous obtiendrez une nouvelle vie. <VP>Coûte %s points. <J><a href='event:buy2Lives'>[Acheter]",
184
description="Description",
185
points="Points",
186
winsAsRunner="Gaggne en étant un Coureur",
187
winsAsDeath="Gagne en étant le tueur",
188
profile2="Profil",
189
rules="Règles</font></font></u><font size='12'>\n\n• Utiliser des techniques pour faire buguer le jeu n'est pas autorisé\n\n• Vous n'avez pas le droit de tricher, comme dans tout autre jeu.",
190
rules2="Règles",
191
commands="Boosters\n\n<font size='11'><b>Cliquer</b> - Fait apparaître un objet chamane aléatoire lorsque vous le rôle de <J>le tueur<J>.\n\n<b>Barre d'espace</b> - Fait un grand saut suivi d'un boulet invisible lorsque vous êtes un <J>Coureur</J>. \n\n<b>Flèche du basw / touche S</b> - Vous donne un bonus de vitesse. (Fonctione pour tueurs et les Coureurs)",
192
commands2="Boosters",
193
credits="Crédits</font></font><font face='verdana'><font size='11'>\n\n<N>Code - Fuzzyfirsdog#0000\n\Idée du module - Reddeathnick#3204\n\nTraductions Arabe - Bodykudo#0000\n\nTraduction française - Tortuegreen#0000\n\nTraductions en Portugais - Pratton#0000\n\nSuggestions des boosters - Reddeathnick#3204, Seaqueen2003#0000, Mugiwaraloffy#9866\n\nAnti-triche - Mariluiss#0000 \n\n<VP>Merci ^^",
194
credits2="Crédits",
195
killer="[Tueur] ",
196
youCanAttack="<R>Tueur: <N>Vous pouvez attaquer",
197
youCanNotAttack="<R>Tueur: <N>Vous ne pouvez pas attaquer",
198
youCanUsePowerups="<VP>Coureur: <N>Vous pouvez utiliser des boosters",
199
youCanNotUsePowerups="<VP>Coureur: <N>Vous ne pouvez pas utiliser de boosters",
200
attacked="ATTAQUÉ",
201
youAreARunner="Vous êtes un Coureur",
202
youAreADeath="Vous êtes le tueur",
203
help="Dans #deathrun, il y a <J>tueurs</J> et <J>les Coureurs</J>. le tueur doit tuer les souris en cliquant pour faire apparaître des objets. Si aucun Coureur ne rentre dans le trou avec le fromage, tueurs gagnent! Les Coureurs peuvent utiliser des boosters à leur disposition pour rentrer dans le trou et échaper aux tueurs. Si un Coureur réussit à rentrer dans le trou, les Coureurs gagnent.",
204
close="Fermer",
205
help2="Aide",
206
superJump="SUPER SAUT",
207
speed="VITESSE",
208
deathsWin="Tueurs ont gagné !",
209
runnersWin="Les Coureurs ont gagné !"
210
}
211
lang.en={boughtNyan="<J>You bought nyan cat!",nyanInv="<p align='left'>Nyan Cat <J><a href='event:equipNyan'>[Equip]</a></J>",nyan="Nyan Cat<N> - Nyan cat will appear as your attack object. <VP>Worth %s points.<J><a href='event:buyNyan'> [Buy]",boughtUltraCannon="<J>You bought the ultra cannon!",ultraCannonInv="<p align='left'>Ultra Cannon <J><a href='event:equipUltraCannon'>[Equip]</a></J>",ultraCannon="Ultra Cannon<N> - 2 glowing ultra cannons will appear as your attack object. <VP>Worth %s points.<J><a href='event:buyUltraCannon'> [Buy]",boughtRock="<J>You bought the rock anvil!",rock="Rock Anvil<N> - A rock anvil appear as your attack object. <VP>Worth %s points.<J><a href='event:buyRock'> [Buy]",rockInv="<p align='left'>Rock Anvil <J><a href='event:equipRock'>[Equip]</a></J>",mechAnvilInv="<p align='left'>Mechanical Anvil <J><a href='event:equipMechAnvil'>[Equip]</a></J>",boughtMechAnvil="<J>You bought the mechanical anvil!",watermelonInv="<p align='left'>Watermelon Cannon <J><a href='event:equipWatermelon'>[Equip]</a></J>",boughtWatermelon="<J>You bought the watermelon cannon!",mechAnvil="Mechanical Anvil<N> - 2 mechanical anvils will appear as your attack object. <VP>Worth %s points.<J><a href='event:buyMechAnvil'> [Buy]",watermelon="Watermelon Cannon<N> - A watermelon cannon will appear as your attack object. <VP>Worth %s points.<J><a href='event:buyWatermelon'> [Buy]",boughtShamanCannon="<J>You bought the shaman cannon!",shamanCannonInv="<p align='left'>Shaman Cannon <J><a href='event:equipShamanCannon'>[Equip]</a></J>",shamanCannon="Shaman Cannon<N> - 3 shaman cannons will appear as your attack object. <VP>Worth %s points.<J><a href='event:buyShamanCannon'> [Buy]",equip="Equip",need2People="You need 2 people to play",nowHave2Lives="<J>You now have 2 lives on each round!",boughtIcedMouse="<J>You just bought the iced mouse object!",boughtCake="<J>You just bought the cake object!",boughtCompanion="<J>You just bought the companion crate!",companionInv="<p align='left'>Companion Crate <J><a href='event:equipCompanion'>[Equip]</a></J>",companion="Companion Crate<N> - A companion crate will appear as your attack object. <VP>Worth %s points.<J><a href='event:buyCompanion'> [Buy]",inventory2="Inventory",inventory="<p align='center'><font size='20'>INVENTORY</font><br><br><font size='12'><p align='left'>Default Box <a href='event:equipDefault'><J>[Equip]</J></a>",icedMouseInv="<p align='left'>Iced mouse <J><a href='event:equipIcedMouse'>[Equip]</a></J>",cakeInv="<p align='left'>Cake <J><a href='event:equipCake'>[Equip]</a></J>",shop2="Shop",cake="Cake Object<N> - A cake will appear as your attack object. <VP>Worth %s points.<J><a href='event:buyCake'> [Buy]",icedMouse="Iced Mouse Object<N> - An iced mouse will appear as your attack object. <VP>Worth %s points.<J><a href='event:buyIcedMouse'> [Buy]",lives2="2 Lives<N> - After you die your first time on a round, you'll be given another live once. <VP>Worth %s points. <J><a href='event:buy2Lives'>[Buy]",description="Description",points="Points",winsAsRunner="Wins as runner",winsAsDeath="Wins as Killer",profile2="Profile",rules="Rules</font></font></u><font size='12'>\n\n• Using tricks to glitch the game is not allowed\n\n• You are not allowed to hack just like in any other game.",rules2="Rules",commands="Powerups\n\n<font size='11'><b>Click</b> - Spawns a random shaman object when you have the role of being a <J>Killer</J>.\n\n<b>Spacebar</b> - Makes a large jump followed with an invisible cannon when you have the role of being a <J>Runner</J>. \n\n<b>Down Arrow / S key</b> - Gives you a boost of speed. (Works for both Killers and Runners)",commands2="Powerups",credits="Credits</font></font><font face='verdana'><font size='11'>\n\n<N>Programming - Fuzzyfirsdog#0000\n\nModule Idea - Reddeathnick#3204\n\nArabic Translations - Bodykudo#0000\n\nFrench Translations - Tortuegreen#0000\n\nPortuguese Translations - Pratton#0000\n\nPowerup Suggestions - Reddeathnick#3204, Seaqueen2003#0000, Mugiwaraloffy#9866\n\nFinding Ways To Remove Hacks - Mariluiss#0000 \n\n<VP>Thank you ^^",credits2="Credits",youCanAttack="<R>Killer: <N>You can attack",youCanNotAttack="<R>Killer: <N>You can not attack",youCanUsePowerups="<VP>Runner: <N>You can use powerups",youCanNotUsePowerups="<VP>Runner: <N>You can not use powerups",attacked="ATTACKED",youAreARunner="You are a runner",youAreADeath="You are a Killer",help="In #deathrun there are <J>Killers</J> and <J>Runners</J>. Killers should try to kill the mice by clicking to spawn objects, if no runners get into the hole then Killers win! Runners are supposed to use the powerups they are given to get into the hole and escape Killers. If one runner gets into the hole, runners win.",close="Close",help2="Help",superJump="SUPER JUMP",speed="SPEED",deathsWin="Killers win!",runnersWin="Runners win!",killer="[Killer] "}
212
lang.ar={
213
boughtNyan="<J>لقد اشتريت القطة نيان!",
214
nyanInv="<p align='left'>القطة نيان <J><a href='event:equipNyan'>[ارتداء]</a></J>",
215
nyan="القطة نيان<N> - القطة نيان سوف تظهر كأداة هجومك عندما تكون القاتل. <VP>تستحق %s نقطة.<J><a href='event:buyNyan'> [شراء]",
216
boughtUltraCannon="<J>لقد اشتريت القذيفة الفائقة!",
217
ultraCannonInv="<p align='left'>القذيفة الفائقة <J><a href='event:equipUltraCannon'>[ارتداء]</a></J>",
218
ultraCannon="القذيفة الفائقة<N> - كُرتان فائقتان متوهجتان سوف يظهران كهجومك عندما تكون القاتل <VP>تستحق %s نقطة.<J><a href='event:buyUltraCannon'> [شراء]",
219
boughtRock="<J>لقد اشتريت السندان الصخري!",
220
rock="السندان الصخري<N> - السندان الصخري سوف يظهر كهجومك عندما تكون القاتل. <VP>يستحق %s نقطة.<J><a href='event:buyRock'> [شراء]",
221
rockInv="<p align='left'>السندان الصخري <J><a href='event:equipRock'>[ارتداء]</a></J>",
222
mechAnvilInv="<p align='left'>السندان الميكانيكي <J><a href='event:equipMechAnvil'>[ارتداء]</a></J>",
223
boughtMechAnvil="<J>لقد اشتريت السندان الميكانيكي!",
224
watermelonInv="<p align='left'>كرة البطيخ <J><a href='event:equipWatermelon'>[ارتداء]</a></J>",
225
boughtWatermelon="<J>لقد اشتريت كرة البطيخ!",
226
mechAnvil="السندان الميكانيكي<N> - سندانان ميكانيكيان سوف يظهران كهجوم عندما تكون القاتل. <VP>يستحق %s نقطة.<J><a href='event:buyMechAnvil'> [شراء]",
227
watermelon="كرة البطيخ<N> - كرة البطيخ سوف تظهر كهجومك عندما تكون القاتل. <VP>تستحق %s نقطة.<J><a href='event:buyWatermelon'> [شراء]",
228
boughtShamanCannon="<J>لقد اشتريت كرة الشامان!",
229
shamanCannonInv="<p align='left'>كرة الشامان <J><a href='event:equipShamanCannon'>[ارتداء]</a></J>",
230
shamanCannon="كرة الشامان<N> - 3 كرات شامان سوف تظهر كهجومك عندما تكون القاتل. <VP>تستحق %s نقاط.<J><a href='event:buyShamanCannon'> [شراء]",
231
	equip="ارتداء",
232
	need2People="أنت تحتاج لاعبيّن لكي تلعب",
233
	nowHave2Lives="<J>أنت الآن لديك حيواتان كل جولة",
234
	boughtIcedMouse="<J>لقد اشتريت الفأر المجمَد!",
235
	boughtCake="<J>لقد اشتريت صندوق الكعك!",
236
	boughtCompanion="<J>لقد اشتريت القفص!",
237
	companionInv="<p align='left'>القفص <J><a href='event:equipCompanion'>[ارتداء]</a></J>",
238
	companion="القفص<N> - القفص سوف يظهر كهجومك عندما تكون القاتل.<VP>يستحق %s نقطة.<J><a href='event:buyCompanion'> [شراء]",
239
	inventory2="المخزن",
240
	inventory="<p align='center'><font size='20'>المخزن</font><br><br><font size='12'><p align='left'>الصندوق العادي <a href='event:equipDefault'><J>[ارتداء]</J></a>",
241
	icedMouseInv="<p align='left'>الفأر المجمَد <J><a href='event:equipIcedMouse'>[ارتداء]</a></J>",
242
	cakeInv="<p align='left'>الكعكة <J><a href='event:equipCake'>[ارتداء]</a></J>",
243
	shop2="المتجر",
244
	cake="الكعكة<N> - الكعكة سوف تظهر كهجومك عندما تكون القاتل.<VP>تستحق %s نقطة.<J><a href='event:buyCake'> [شراء]",
245
	icedMouse="الفأر المجمَد<N> - الفأر المجمَد سوف يظهر كهجومك عندما تكون القاتل. <VP>يستحق %s نقطة.<J><a href='event:buyIcedMouse'> [شراء]",
246
	lives2="حياتان<N> - بعدما تموت لأول مرة في الجولة, سوف يتم إعطائك حياة أخرى فورًا. <VP>تستحق %s نقطة. <J><a href='event:buy2Lives'>[شراء]",
247
	description="الوصف",
248
	points="نقاط",
249
	winsAsRunner="مرات الفوز كراكض",
250
	winsAsDeath="مرات الفوز كقاتل",
251
	profile2="الملف الشخصي",
252
	rules="القواعد</font></font></u><font size='12'>\n\n• استخدام طرق لتخريب اللعبة ليس مسموحًا\n\n• ليس مسموحًا لك استخدام الهكر كباقي الألعاب.",
253
	rules2="القواعد",
254
	commands="المقويات\n\n<font size='11'>اضغط - Sلكي تطلق صندوقًا للهجوم عندما تكون <J>القاتل</J>.\n\nالمسافة - تجعلك تقفز طويلًا بالإضافة إلى قذيفة مخفية عندما تكون <J>راكضًا</J>. \n\nزر أسفل / زر S - تعطيك سرعة إضافية. (تعمل لدى القاتل والراكضين)",
255
	commands2="المقويِات",
256
	credits="ائتمان</font></font><font face='verdana'><font size='11'>\n\n<N>البرمجة - Fuzzyfirsdog#0000\n\n الترجمة العربية - Bodykudo#0000\n\nترجمة فرنسية - Tortuegreen#0000\n\nترجمات البرتغالية\n\nفكرة النمط - Reddeathnick#3204\n\nاقتراح المقويِّات - Reddeathnick#3204, Seaqueen2003#0000, Mugiwaraloffy#9866\n\nإيجاد طريق لمنع الهكرز - Mariluiss#0000 \n\n<VP>شكرًا لكم ^^",
257
	credits2="الائتمان",
258
 killer="[القاتل] ",
259
	youCanAttack="<R>القاتل: <N>يمكنك الهجوم",
260
	youCanNotAttack="<R>القاتل: <N>لا يمكنك الهجوم",
261
	youCanUsePowerups="<VP>الراكض: <N>يمكنك استعمال المقويِّات",
262
	youCanNotUsePowerups="<VP>الراكض: <N>لا يمكنك استعمال المقويِّات",
263
	attacked="هجم",
264
	youAreARunner="أنت راكض",
265
	youAreADeath="أنت قاتل",
266
	help="في #deathrun يوجد <J>قاتلين</J> و <J>الراكضين</J>. القاتلين يجب أن يحاولوا قتل الراكضين عبر إطلاق أدوات عبر الضغط على الشاشة, إذا لم يفز أي راكض سيفوز القاتل! الراكضين يمكنهم استعمال المقويِّات. إذا وصل راكض واحد للجحر, يفوز الراكضين.",
267
	close="إغلاق",
268
	help2="المساعدة",
269
	superJump="القفزة الخارقة",
270
	speed="السرعة",
271
	deathsWin="فاز القاتل!",
272
	runnersWin="فاز الراكضين!"
273
}
274
275
roles={"Death","Runner"}
276
277
278
death=0
279
runner=0
280
miceInHole=0
281
282
function setLang(n)
283
284
text[n]=lang[tfm.get.room.playerList[n].community] or lang.en
285
286
end
287
288
P=string.byte("P")
289
H=string.byte("H")
290
O=string.byte("O")
291
function bindMouse()
292
for n,player in pairs(tfm.get.room.playerList) do
293
294
tfm.exec.bindKeyboard(n, 0, true, true)
295
296
tfm.exec.bindKeyboard(n, 1, true, true)
297
298
tfm.exec.bindKeyboard(n, 2, true, true)
299
300
tfm.exec.bindKeyboard(n, 3, true, true)
301
302
tfm.exec.bindKeyboard(n, 32, true, true)
303
304
tfm.exec.bindKeyboard(n, P, true, true)
305
306
tfm.exec.bindKeyboard(n, O, true, true)
307
308
tfm.exec.bindKeyboard(n, H, true, true)
309
system.bindMouse(n,true)
310
end
311
end
312
bindMouse()
313
314
tfm.exec.newGame(maps[math.random(#maps)])
315
names={}
316
317
theRole=1
318
currentRole=roles[math.floor(theRole)]
319
320
function changeCurrentRole()
321
322
end
323
numbs={1,2}
324
325
function showTabs(n)
326
ui.addTextArea(130, "", n, -432, -865, 3625, 953, 0xffffff, 0xffffff, 0.008, true)
327
328
ui.addTextArea(15, "<VP><a href='event:help'><font size='12'>"..text[n].help2.."</a> | <a href='event:credits'>"..text[n].credits2.." </a>|<a href='event:commands'> "..text[n].commands2.." </a>|<a href='event:rules'> "..text[n].rules2, n, 30, 30, 264, 26, 0x00aaff, 0x00eeff, 0, true)
329
ui.addTextArea(155, "<font size='12'><VP><a href='event:inventory'>"..text[n].inventory2.."</a> | <a href='event:shop'>"..text[n].shop2.." | <a href='event:profile'>"..text[n].profile2, n, 600, 30, 264, 26, 0x00aaff, 0x00eeff, 0, true)
330
331
end
332
function setData(n)
333
data[n]=
334
{
335
def=2,
336
idTime=6,
337
afk=true,
338
description="",
339
p=0,
340
nyan=false,
341
ultraCannon=false,
342
rock=false,
343
mechAnvil=false,
344
watermelon=false,
345
shamanCannon=false,
346
companion=false,
347
isInRoom=true,
348
cake=false,
349
objects=2,
350
lives2=false,
351
normalLives=1,
352
lives=1,
353
icedMouse=false,
354
winsAsRunner=0,
355
winsAsDeath=0,
356
facingx=85,
357
name=n,
358
role="Runner",
359
points=0,
360
spawnLimit=-1,
361
ableToShoot=0,
362
ableToShoot2=0,
363
pointsAndScore="",
364
inventory=text[n].inventory
365
}
366
data[n].objects=data[n].def
367
end
368
function inventory(n)
369
370
ui.addTextArea(152, "", n, 510, 96, 286, 290, 0x00ff6a, 0x047529, 1, true)
371
ui.addTextArea(92, "<p align='center'><font size='20'>"..text[n].inventory.."</font>\n", n, 515, 101, 276, 279, 0x034511, 0x005219, 1, true)
372-
ui.addTextArea(222, "<p align='center'><font size='13'><a href='event:close'><font color='#808080'>\n"..text[n].close, n, 515, 343, 276, 36, 0x034511, 0x005219, 1, true)
372+
ui.addTextArea(222, "<p align='center'><font size='13'><a href='event:close'><font color='#808080'>"..text[n].close, n, 515, 343, 276, 36, 0x034511, 0x005219, 1, true)
373
374
end
375
for n,player in pairs(tfm.get.room.playerList) do
376
377
setLang(n)
378
changeCurrentRole()
379
380
table.insert(names,n)
381
382
showTabs(n)
383
setData(n)
384
add(n)
385
vip(n)
386
387
data[n].pointsAndScore=data[n].name.." "..data[n].points
388
table.insert(scores,data[n].points)
389
showTabs(n)
390
tfm.exec.lowerSyncDelay(n)
391
table.insert(dp,n)
392
end
393
394
function Dp(name)
395
	name = name:sub(1,1):upper()..name:sub(2):lower()
396
	for i,dp in ipairs(dp) do
397
		if name==dp then
398
			return true
399
		end
400
	end
401
	return false
402
end
403
404
function shopPage1(n)
405
ui.addTextArea(18, "", n, 494, 117, 282, 178, 0x59442c, 0x59442c, 1, true)
406
ui.addTextArea(25, "<CE>"..text[n].killer..string.format(text[n].lives2,Lives2), n, 500, 123, 270, 46, 0x302315, 0x59442c, 1, true)
407
ui.addTextArea(19, "<CE>"..text[n].killer..string.format(text[n].icedMouse,icedMouseCost), n, 500, 182, 270, 46, 0x302315, 0x59442c, 1, true)
408
ui.addTextArea(110, "<CE>"..text[n].killer..string.format(text[n].cake,cakeCost), n, 500, 241, 270, 47, 0x302315, 0x59442c, 1, true)
409
ui.addTextArea(222, "<p align='center'>\n<font size='13'><a href='event:close'><font color='#808080'>"..text[n].close, n, 494, 296, 282, 36, 0x59442c, 0x59442c, 1, true)
410
ui.addTextArea(92, "<G><p align='center'>«", n, 498, 310, 19, 18, 0x324650, 0x000000, 1, true)
411
ui.addTextArea(152, "<a href='event:nextTo2'><p align='center'>»", n, 752, 310, 19, 18, 0x324650, 0x000000, 1, true)
412
413
414
end
415
416
function shopPage2(n)
417
ui.addTextArea(18, "", n, 494, 117, 282, 178, 0x59442c, 0x59442c, 1, true)
418
ui.addTextArea(25, "<CE>"..text[n].killer..string.format(text[n].companion,companionCost), n, 500, 123, 270, 46, 0x302315, 0x59442c, 1, true)
419
ui.addTextArea(19, "<CE>"..text[n].killer..string.format(text[n].shamanCannon,shamanCannonCost), n, 500, 182, 270, 46, 0x302315, 0x59442c, 1, true)
420
ui.addTextArea(110, "<CE>"..text[n].killer..string.format(text[n].watermelon,watermelonCost), n, 500, 241, 270, 47, 0x302315, 0x59442c, 1, true)
421
ui.addTextArea(222, "<p align='center'>\n<font size='13'><a href='event:close'><font color='#808080'>"..text[n].close, n, 494, 296, 282, 36, 0x59442c, 0x59442c, 1, true)
422
ui.addTextArea(92, "<a href='event:backTo1'><p align='center'>«", n, 498, 310, 19, 18, 0x324650, 0x000000, 1, true)
423
ui.addTextArea(152, "<a href='event:nextTo3'><p align='center'>»", n, 752, 310, 19, 18, 0x324650, 0x000000, 1, true)
424
425
426
end
427
428
429
function shopPage3(n)
430
ui.addTextArea(18, "", n, 494, 117, 282, 178, 0x59442c, 0x59442c, 1, true)
431
ui.addTextArea(25, "<CE>"..text[n].killer..string.format(text[n].mechAnvil,mechAnvilCost), n, 500, 123, 270, 46, 0x302315, 0x59442c, 1, true)
432
ui.addTextArea(19, "<CE>"..text[n].killer..string.format(text[n].rock,rockCost), n, 500, 182, 270, 46, 0x302315, 0x59442c, 1, true)
433
ui.addTextArea(110, "<CE>"..text[n].killer..string.format(text[n].ultraCannon,ultraCannonCost), n, 500, 241, 270, 47, 0x302315, 0x59442c, 1, true)
434
ui.addTextArea(222, "<p align='center'>\n<font size='13'><a href='event:close'><font color='#808080'>"..text[n].close, n, 494, 296, 282, 36, 0x59442c, 0x59442c, 1, true)
435
ui.addTextArea(92, "<a href='event:backTo2'><p align='center'>«", n, 498, 310, 19, 18, 0x324650, 0x000000, 1, true)
436
ui.addTextArea(152, "<a href='event:nextTo4'><p align='center'>»", n, 752, 310, 19, 18, 0x324650, 0x000000, 1, true)
437
438
439
end
440
441
function shopPage4(n)
442
ui.addTextArea(18, "", n, 494, 117, 282, 178, 0x59442c, 0x59442c, 1, true)
443
ui.addTextArea(25, "<CE>"..text[n].killer..string.format(text[n].nyan,nyanCost), n, 500, 123, 270, 46, 0x302315, 0x59442c, 1, true)
444
ui.addTextArea(19, "<CE>", n, 500, 182, 270, 46, 0x302315, 0x59442c, 1, true)
445
ui.addTextArea(110, "<CE>", n, 500, 241, 270, 47, 0x302315, 0x59442c, 1, true)
446
ui.addTextArea(222, "<p align='center'>\n<font size='13'><a href='event:close'><font color='#808080'>"..text[n].close, n, 494, 296, 282, 36, 0x59442c, 0x59442c, 1, true)
447
ui.addTextArea(92, "<a href='event:backTo3'><p align='center'>«", n, 498, 310, 19, 18, 0x324650, 0x000000, 1, true)
448
ui.addTextArea(152, "<G><p align='center'>»", n, 752, 310, 19, 18, 0x324650, 0x000000, 1, true)
449
450
451
end
452
453
454
n1=scores[math.floor(1)]
455
n2=scores[math.floor(2)]
456
n3=scores[math.floor(3)]
457
print(n1)
458
print(n2)
459
print(n3)
460
461
function findRoles(n)
462
for n,player in pairs(tfm.get.room.playerList) do
463
if data[n].role=="Death" then
464
465
tfm.exec.movePlayer(n,150,30,false,0,0,false)
466
467
elseif data[n].role=="Runner" then
468
469
tfm.exec.movePlayer(n,150,300,false,0,0,false)
470
471
end
472
end
473
end
474
475
function findRolesNewPlayer(n)
476
if data[n].role=="Death" then
477
tfm.exec.movePlayer(n,150,30,false,0,0,false)
478
479
elseif data[n].role=="Runner" then
480
481
tfm.exec.movePlayer(n,150,300,false,0,0,false)
482
483
484
 
485
end
486
end
487
488
489
490
a={}
491
492
function eventNewPlayer(n)
493
id=tfm.exec.addImage("1642e105967.png","&0",190,146,n)
494
495
setLang(n)
496
print("yooy")
497
bindMouse()
498
mice=0
499
countMice()
500
if not data[n] then
501
tfm.exec.respawnPlayer(n)
502
503
setData(n)
504
end
505
table.insert(dp,n)
506
vip(n)
507
add(n)
508
data[n].idTime=0
509
510
data[n].isInRoom=true
511
512
showTabs(n)
513
table.insert(names,n)
514
findRolesNewPlayer(n)
515
if mice<2 then
516
tfm.exec.chatMessage("<R>"..text[n].need2People,n)
517
end
518
519
end
520
521
522
523
524
525
function addToRoleNumber()
526
for n,player in pairs(tfm.get.room.playerList) do
527
if data[n].role=="Death" then
528
death=death+1
529
end
530
if data[n].role=="Runner" then
531
runner=runner+1
532
533
534
end
535
findRoles(n)
536
537
538
end
539
end
540
541
542
543
tfm.exec.newGame(maps[math.random(#maps)])
544
amountInA=0
545
546
function punishGlitchers()
547
if a then
548
for i=1,amountInA do
549
data[a[math.floor(amountInA)]].role="Runner"
550
end
551
end
552
end
553
554
randomDeath=names[math.floor(math.random(mice))]
555
data[randomDeath].role="Death"
556
lastDeath=""
557
function eventNewGame()
558
lag=0
559
v=0
560
561
local toDespawn = {}
562
563
do
564
	local addShamanObject = tfm.exec.addShamanObject
565
	tfm.exec.addShamanObject = function(...)
566
		toDespawn[#toDespawn + 1] = {
567
			addShamanObject(...),
568
			os.time() + 3000
569
		}
570
571
		return toDespawn[#toDespawn][1]
572
	end
573
end
574
time=0
575
theRole=1
576
powerx=math.random(1600)
577
runner=0
578
death=0
579
mice=0
580
countMice()
581
for n,player in pairs(tfm.get.room.playerList) do
582
583
data[n].lives=data[n].normalLives
584
585
changeCurrentRole()
586
data[n].role="Runner"
587
data[n].ableToShoot=0
588
data[n].ableToShoot2=0
589
data[n].spawnLimit=-1
590
data[n].afk=true
591
if mice<2 then
592
tfm.exec.chatMessage("<R>"..text[n].need2People,n)
593
end
594
end
595
mice=mice
596
if lastDeath==randomDeath then
597
randomDeath=names[math.random(math.floor(mice))]
598
end
599
600
if data[randomDeath].isInRoom==true then
601
data[randomDeath].role="Death"
602
elseif data[randomDeath].isInRoom==false then
603
randomDeath=names[math.random(math.floor(mice))]
604
end
605
606
lastDeath=randomDeath
607
608
addToRoleNumber()
609
findRoles(n)
610
print("Last death: "..lastDeath)
611
612
end
613
614
615
616
617
618
619
620
locationx=0
621
locationy=0
622
623
624
objects={54}
625
626
function eventMouse(n,x,y)
627
if x>200 then
628
629
630
if data[n].role=="Death" and (math.floor(time)>3) and lag<2 and data[n].spawnLimit<1 and mice>1 then
631
lag=lag+1
632
if lag>3 then
633
randomDeath=names[math.floor(math.random(mice))]
634
data[randomDeath].role="Death"
635
local toDespawn = {}
636
table.insert(a,n)
637
amountInA=amountInA+1
638
do
639
	local addShamanObject = tfm.exec.addShamanObject
640
	tfm.exec.addShamanObject = function(...)
641
		toDespawn[#toDespawn + 1] = {
642
			addShamanObject(...),
643
			os.time() + 0000
644
		}
645
646
		return toDespawn[#toDespawn][1]
647
	end
648
end
649
650
651
ui.addTextArea(133, "<R><font size='17'><b>USING LAG TRICKS OR HACKS ARE NOT ALLOWED IN THIS ROOM", n, 143, 150, 534, 91, 0x324650, 0x000000, 1, true)
652
time=-0.5
653
654
tfm.exec.newGame(maps[math.random(#maps)])
655
eventNewGame()
656
end
657
658
659
data[n].spawnLimit=3
660
attacked=0
661
attacked=n
662
for n,player in pairs(tfm.get.room.playerList) do
663
ui.addTextArea(2, "<font color='#FF9000'><font size='30'><b>"..attacked.." "..text[n].attacked, n, x, y, 425, 100, 0x324650, 0x000000, 0, false)
664
end
665
locationx=x
666
locationy=y
667
668
669
if not (data[n].objects==1704) and not (data[n].objects==1002) and not (data[n].objects==1706) and not (data[n].objects==1709) then
670
tfm.exec.addShamanObject(data[n].objects,locationx,locationy,0,0,20,false)
671
end
672
if data[n].objects==1704 then
673
tfm.exec.addShamanObject(data[n].objects,locationx,locationy,180,0,20,false)
674
675
tfm.exec.addShamanObject(data[n].objects,locationx-20,locationy,180,0,20,false)
676
tfm.exec.addShamanObject(data[n].objects,locationx+20,locationy,180,0,20,false)
677
elseif data[n].objects==1706 then
678
tfm.exec.addShamanObject(data[n].objects,locationx,locationy,180,0,20,false)
679
elseif data[n].objects==1709 then
680
tfm.exec.addShamanObject(data[n].objects,locationx+5,locationy,170,10,120,false)
681
tfm.exec.addShamanObject(data[n].objects,locationx-5,locationy,-170,10,20,false)
682
elseif data[n].objects==1002 then
683
tfm.exec.addShamanObject(data[n].objects,locationx-5,locationy,0,0,20,false)
684
tfm.exec.addShamanObject(data[n].objects,locationx+5,locationy,0,0,20,false)
685
end
686
       tfm.exec.displayParticle(3,locationx,locationy,0,0,0,0,nil)
687
      canShoot()
688
end
689
end
690
end 
691
692
693
time=0
694
695
number1=0
696
number2=0
697
number3=0
698
699
700
function eventPlayerGetCheese(n)
701
randomDeath=n
702
v=v+1
703
print(n)
704
if data[n].role=="Runner" and mice>1 and v==1 and data[n].afk==false and o>0 then
705
706
tfm.exec.chatMessage("<J>"..text[n].runnersWin,n)
707
time=119.5
708
data[n].points=data[n].points+50
709
710
for n,player in pairs(tfm.get.room.playerList) do
711
if data[n].role=="Runner" and data[n].afk==false and o>0 then
712
data[n].points=data[n].points+15
713
data[n].winsAsRunner=data[n].winsAsRunner+1
714
wonCountDown=-5
715
end
716
end
717
table.insert(scores,data[n].points)
718
ui.addTextArea(133, "<b><font size='40'><font color='#0ff164'>"..text[n].runnersWin, n, 296, 282, 351, 189, 0xd41717, 0x000000, 0, true)
719
720
721
722
end
723
end
724
725
726
727
728
729
730
function explosions()
731
       tfm.exec.displayParticle(0,locationx,locationy,0.5,0.5,0.5,0.5,nil)
732
       tfm.exec.displayParticle(0,locationx,locationy,-0.5,-0.5,-0.5,-0.5,nil)
733
       tfm.exec.displayParticle(2,locationx,locationy,3,-3,3,-3,nil)
734
       tfm.exec.displayParticle(2,locationx,locationy,-3,3,-3,3,nil)
735
 
736
       tfm.exec.displayParticle(0,locationx,locationy,-0.5,0.5,-0.5,0.5,nil)
737
       tfm.exec.displayParticle(0,locationx,locationy,0.5,-0.5,0.5,-0.5,nil)
738
       tfm.exec.displayParticle(2,locationx,locationy,1,-3,1,-3,nil)
739
       tfm.exec.displayParticle(2,locationx,locationy,1,1,3,1,nil)
740
       tfm.exec.displayParticle(2,locationx,locationy,-1,3,-1,3,nil)
741
       tfm.exec.displayParticle(2,locationx,locationy,-1,-1,-3,-1,nil)
742
       tfm.exec.displayParticle(5,locationx,locationy,0.5,0.5,0.5,0.5,nil)
743
       tfm.exec.displayParticle(5,locationx,locationy,-0.5,-0.5,-0.5,-0.5,nil)
744
 
745
       tfm.exec.displayParticle(5,locationx,locationy,-0.5,0.5,-0.5,0.5,nil)
746
       tfm.exec.displayParticle(5,locationx,locationy,0.5,-0.5,0.5,-0.5,nil)
747
		tfm.exec.explosion(locationx, locationy, 40, 40, false)
748
end
749
750
751
function canShoot()
752
for n,player in pairs(tfm.get.room.playerList) do
753
if data[n].spawnLimit<1 and data[n].role=="Death" then
754
ui.addTextArea(12, "\n<p align='center'>"..text[n].youCanAttack, n, 270, 23, 240, 46, 0x00a611, 0x338500, 1, true)
755
756
end
757
if not (data[n].spawnLimit<1) and data[n].role=="Death" then
758
ui.addTextArea(12, "\n<p align='center'>"..text[n].youCanNotAttack, n, 270, 23, 240, 46, 0x802c2c, 0x6e0000, 1, true)
759
760
end
761
if data[n].spawnLimit<1 and data[n].role=="Runner" then
762
ui.addTextArea(12, "\n<p align='center'>"..text[n].youCanUsePowerups, n, 270, 23, 240, 46, 0x00a611, 0x338500, 1, true)
763
764
end
765
if not (data[n].spawnLimit<1) and data[n].role=="Runner" then
766
ui.addTextArea(12, "\n<p align='center'>"..text[n].youCanNotUsePowerups, n, 270, 23, 240, 46, 0x802c2c, 0x6e0000, 1, true)
767
768
end
769
end
770
end
771
772
function removeObjectAfterTime()
773
	for k, v in ipairs(toDespawn) do
774
		if os.time() > v[2] then
775
			tfm.exec.removeObject(v[1])
776
			table.remove(toDespawn, k)
777
		end
778
	end
779
end
780
781
function eventLoop()
782
for n,player in pairs(tfm.get.room.playerList) do
783
data[n].idTime=data[n].idTime+0.5
784
if data[n].idTime==5 then
785
tfm.exec.removeImage(id)
786
end
787
end
788
lag=0
789
removeObjectAfterTime()
790
791
if mice>1 then
792
ui.removeTextArea(202,nil)
793
794
wonCoundown=wonCountDown+0.5
795
796
797
798
canShoot()
799
for n,player in pairs(tfm.get.room.playerList) do
800
801
data[n].spawnLimit=data[n].spawnLimit-0.5
802
803
if tfm.get.room.playerList[n].y>100 and data[n].role=="Death" then
804
805
tfm.exec.movePlayer(n,150,30,false,0,0,false)
806
807
elseif tfm.get.room.playerList[n].y<100 and data[n].role=="Runner" then
808
tfm.exec.movePlayer(n,70,300,false,0,0,false)
809
elseif tfm.get.room.playerList[n].x>600 and time<5 then
810
tfm.exec.killPlayer(n)
811
tfm.exec.movePlayer(n,150,tfm.get.room.playerList[n].y,false,0,0,false)
812
tfm.exec.respawnPlayer(n)
813
end
814
815
816
817
818
if data[n].spawnLimit==0 then
819
ui.removeTextArea(2,nil)
820
system.bindMouse(n, true)
821
ui.removeTextArea(11,n)
822
end
823
end
824
time=time+.5
825
if time==120 then
826
time=119.6
827
end
828
if time==120.1 then
829
tfm.exec.newGame(maps[math.random(#maps)])
830
for n,player in pairs(tfm.get.room.playerList) do
831
if data[n].role=="Death" and data[n].afk==false and o>0 then
832
data[n].points=data[n].points+15
833
ui.addTextArea(133, "<b><font size='40'><font color='#d40000'>"..text[n].deathsWin, n, 296, 282, 351, 189, 0xd41717, 0x000000, 0, true)
834
tfm.exec.chatMessage("<J>"..text[n].deathsWin,n)
835
end
836
837
end
838
print("Deaths win!")
839
time=-0.5
840
elseif time==0 then
841
for n,player in pairs(tfm.get.room.playerList) do
842
findRoles(n)
843
end
844
elseif time==5 then
845
for n,player in pairs(tfm.get.room.playerList) do
846
ui.removeTextArea(0,nil)
847
ui.removeTextArea(2,nil)
848
system.bindMouse(n, true)
849
ui.removeTextArea(133,n)
850
851
end
852
end
853
end
854
end
855
856
function profile(n)
857
ui.addTextArea(110, "<p align='center'><font size='12'><font color='#000000'><font face='calibri'>"..n, n, 551, 89, 233, 278, 0xffd900, 0x075214, 1, true)
858
ui.addTextArea(18, "<p align='left'><font size='13'><font face='calibri'><font color='#FFFFFF'>"..text[n].points..": <br>"..data[n].points.." <br><br>"..text[n].winsAsDeath..": <br>"..data[n].winsAsDeath.."<br><br>"..text[n].winsAsRunner..": <br>"..data[n].winsAsRunner, n, 557, 136, 105, 226, 0x966a03, 0x294d12, 1, true)
859
ui.addTextArea(19, "<p align='left'><font size='13'><font face='calibri'><font color='#FFFFFF'><a href='event:description'>"..text[n].description.."</a> : "..data[n].description, n, 675, 136, 104, 226, 0x966a03, 0x294d12, 1, true)
860-
ui.addTextArea(25, "<p align='center'><font size='13'><a href='event:close'><font color='#505050'>\n"..text[n].close, n, 551, 368, 233, 36, 0xffd900, 0x075214, 1, true)
860+
ui.addTextArea(25, "<p align='center'><font size='13'><a href='event:close'><font color='#505050'>"..text[n].close, n, 551, 368, 233, 36, 0xffd900, 0x075214, 1, true)
861
end
862
863
function removeTextAreas(n)
864
ui.removeTextArea(18,n)
865
ui.removeTextArea(19,n)
866
ui.removeTextArea(110,n)
867
ui.removeTextArea(222,n)
868
ui.removeTextArea(25,n)
869
ui.removeTextArea(152,n)
870
ui.removeTextArea(92,n)
871
ui.addPopup(0, 2, text[n].description, n, 8565, 290, 200, true)
872
end
873
function help(n)
874
ui.addTextArea(110, "", n, 498, 165, 266, 217, 0x324650, 0x000000, 1, true)
875
ui.addTextArea(18, "<font size='14'><font face='calibri'>"..text[n].help, n, 504, 172, 254, 179, 0x000000, 0x000000, 1, true)
876-
ui.addTextArea(19, "<p align='center'><font size='13'><a href='event:close'>\n"..text[n].close, n, 504, 338, 254, 36, 0x000000, 0xffffff, 1, true)
876+
ui.addTextArea(19, "<p align='center'><font size='13'><a href='event:close'>"..text[n].close, n, 504, 338, 254, 36, 0x000000, 0xffffff, 1, true)
877
end
878
function eventKeyboard(n, key, down, x,y)
879
if tfm.get.room.playerList[n].isDead==false then
880
data[n].afk=false
881
end
882
--FACING
883
if tfm.get.room.playerList[n].isDead==false and data[n].role=="Runner" then
884
o=o+1
885
end
886
887
if key==0 then
888
data[n].facing=-85
889
elseif key==2 then
890
data[n].facing=85
891
print(-data[n].facing)
892
elseif key==P and data[n].p==0 then
893
removeTextAreas(n)
894
profile(n)
895
data[n].p=1
896
elseif key==P and data[n].p==1 then
897
removeTextAreas(n)
898
data[n].p=0
899
elseif key==H and data[n].p==0 then
900
removeTextAreas(n)
901
902
data[n].p=1
903
elseif key==H and data[n].p==1 then
904
removeTextAreas(n)
905
help(n)
906
data[n].p=0
907
elseif key==O and data[n].p==0 then
908
removeTextAreas(n)
909
910
data[n].p=1
911
elseif key==O and data[n].p==1 then
912
removeTextAreas(n)
913
shopPage1(n)
914
data[n].p=0
915
end
916
if time>3 and mice>1 then
917
918
--AUTOMATIC POWERUPS
919
920
if key==32 and data[n].role=="Runner" and data[n].spawnLimit<0 then
921
ui.addTextArea(11, "<b><font size='30'><font color='#F0F000'>"..text[n].superJump, n, x-50, y-50, 379, 67, 0x324650, 0x000000, 0, false)
922
923
		tfm.exec.movePlayer(n,x,y,false,0,-80,false)
924
925
926
927
928
929
       tfm.exec.displayParticle(10,x,y,3,-3,3,-3,nil)
930
       tfm.exec.displayParticle(10,x,y,-3,3,-3,3,nil)
931
 
932
       tfm.exec.displayParticle(10,x,y,-3,-3,-3,-3,nil)
933
       tfm.exec.displayParticle(10,x,y,3,3,3,3,nil)
934
935
936
937
tfm.exec.bindKeyboard(n, 32, false, false)
938
tfm.exec.addShamanObject(17,x,y,60,50,-10,true)
939
data[n].spawnLimit=3.5
940
data[n].ableToShoot=0
941
canShoot()
942
elseif (key==3) then
943
if data[n].role=="Death" then
944
if data[n].facing==-85 then
945
tfm.exec.movePlayer(n,x,y,false,-50,0,true)
946
elseif data[n].facing==85 then
947
tfm.exec.movePlayer(n,x,y,false,50,0,true)
948
end
949
elseif data[n].spawnLimit<0 and data[n].role=="Runner" then
950
tfm.exec.movePlayer(n,x,y,false,data[n].facing,0,true)
951
ui.addTextArea(11, "<b><font size='30'><font color='#F0F000'>"..text[n].speed, n, x-50, y-50, 379, 67, 0x324650, 0x000000, 0, false)
952
953
954
955
956
       tfm.exec.displayParticle(10,x,y,3,-3,3,-3,nil)
957
       tfm.exec.displayParticle(10,x,y,-3,3,-3,3,nil)
958
 
959
       tfm.exec.displayParticle(10,x,y,-3,-3,-3,-3,nil)
960
       tfm.exec.displayParticle(10,x,y,3,3,3,3,nil)
961
962
963
964
data[n].spawnLimit=3.5
965
data[n].ableToShoot=0
966
canShoot()
967
end
968
end
969
end
970
end
971
972
973
n=0
974
system.disableChatCommandDisplay("profile",true)
975
function eventTextAreaCallback(id,p,a)
976
n=p
977
if a=="close" then
978
data[n].p=0
979
removeTextAreas(n)
980
elseif a=="help" then
981
data[n].p=0
982
removeTextAreas(n)
983
--TABS
984
985
ui.addTextArea(110, "", n, 498, 165, 266, 217, 0x324650, 0x000000, 1, true)
986
ui.addTextArea(18, "<font size='14'><font face='calibri'>"..text[n].help, n, 504, 172, 254, 179, 0x000000, 0x000000, 1, true)
987-
ui.addTextArea(19, "<p align='center'><font size='13'><a href='event:close'>\n"..text[n].close, n, 504, 338, 254, 36, 0x000000, 0xffffff, 1, true)
987+
ui.addTextArea(19, "<p align='center'><font size='13'><a href='event:close'>"..text[n].close, n, 504, 338, 254, 36, 0x000000, 0xffffff, 1, true)
988
elseif a=="credits" then
989
data[n].p=0
990
removeTextAreas(n)
991
ui.addTextArea(18, "<p align='center'><font size='16'><font face='verdana'><J>"..text[n].credits, n, 504, 72, 254, 304, 0x4f4132, 0x695743, 1, true)
992-
ui.addTextArea(19, "<p align='center'><font size='13'><a href='event:close'>\n"..text[n].close, n, 504, 343, 254, 36, 0x4f4132, 0x30291a, 1, true)
992+
ui.addTextArea(19, "<p align='center'><font size='13'><a href='event:close'>"..text[n].close, n, 504, 350, 254, 26, 0x4f4132, 0x30291a, 1, true)
993
elseif a=="commands" then
994
data[n].p=0
995
removeTextAreas(n)
996
ui.addTextArea(18, "<p align='center'><font size='14'><font face='verdana'>"..text[n].commands, n, 545, 111, 220, 238, 0x50498c, 0x05014f, 1, true)
997-
ui.addTextArea(19, "<p align='center'><font size='13'><a href='event:close'>\n"..text[n].close, n, 545, 346, 220, 36, 0x284391, 0x0f0759, 1, true)
997+
ui.addTextArea(19, "<p align='center'><font size='13'><a href='event:close'>"..text[n].close, n, 545, 346, 220, 36, 0x284391, 0x0f0759, 1, true)
998
elseif a=="rules" then
999
data[n].p=0
1000
removeTextAreas(n)
1001
ui.addTextArea(18, "<p align='center'><u><font size='17'><font face='calibri'>"..text[n].rules, n, 562, 132, 201, 230, 0xab0000, 0xff4545, 1, true)
1002-
ui.addTextArea(19, "<p align='center'><font size='13'><a href='event:close'>\n"..text[n].close, n, 562, 329, 201, 36, 0xa60000, 0xff0000, 1, true)
1002+
ui.addTextArea(19, "<p align='center'><font size='13'><a href='event:close'>"..text[n].close, n, 562, 329, 201, 36, 0xa60000, 0xff0000, 1, true)
1003
elseif a=="profile" then
1004
removeTextAreas(n)
1005
profile(n)
1006
elseif a=="description" then
1007
ui.addPopup(0, 2, text[n].description, n, 565, 290, 200, true)
1008
1009
end
1010
if a=="inventory" then
1011
data[n].p=0
1012
removeTextAreas(n)
1013
ui.addTextArea(152, "", n, 510, 96, 286, 290, 0x00ff6a, 0x047529, 1, true)
1014
ui.addTextArea(92, "<p align='center'><font size='20'>"..data[n].inventory, n, 515, 101, 276, 279, 0x034511, 0x005219, 1, true)
1015-
ui.addTextArea(222, "<p align='center'><font size='13'><a href='event:close'><font color='#808080'>\n"..text[n].close, n, 515, 343, 276, 36, 0x034511, 0x005219, 1, true)
1015+
ui.addTextArea(222, "<p align='center'><font size='13'><a href='event:close'><font color='#808080'>"..text[n].close, n, 515, 343, 276, 36, 0x034511, 0x005219, 1, true)
1016
end
1017
1018
if a=="equipDefault" then
1019
data[n].objects=data[n].def
1020
elseif a=="equipNyan" then
1021
data[n].objects=212
1022
elseif a=="equipUltraCannon" then
1023
data[n].objects=1709
1024
elseif a=="equipCompanion" then
1025
data[n].objects=61
1026
elseif a=="equipShamanCannon" then
1027
data[n].objects=1704
1028
elseif a=="equipWatermelon" then
1029
data[n].objects=1706
1030
elseif a=="equipIcedMouse" then
1031
data[n].objects=54
1032
elseif a=="equipCake" then
1033
data[n].objects=207
1034
elseif a=="equipMechAnvil" then
1035
data[n].objects=1002
1036
elseif a=="equipRock" then
1037
data[n].objects=1003
1038
1039
elseif a=="shop" then
1040
shopPage1(n)
1041
data[n].p=0
1042
elseif a=="backTo1" then
1043
shopPage1(n)
1044
elseif a=="nextTo2" then
1045
1046
shopPage2(n)
1047
elseif a=="backTo2" then
1048
shopPage2(n)
1049
elseif a=="nextTo3" then
1050
shopPage3(n)
1051
elseif a=="backTo3" then
1052
shopPage3(n)
1053
elseif a=="nextTo4" then
1054
shopPage4(n)
1055
end
1056
--SHOP ITEMS
1057
1058
if a=="buyIcedMouse" and (data[n].points>icedMouseCost or data[n].points==icedMouseCost) and data[n].icedMouse==false then
1059
data[n].inventory = data[n].inventory.."\n"..text[n].icedMouseInv
1060
data[n].objects=54
1061
tfm.exec.chatMessage(text[n].boughtIcedMouse,n)
1062
1063
data[n].icedMouse=true
1064
data[n].points=data[n].points-icedMouseCost
1065
elseif a=="buyNyan" and (data[n].points>nyanCost or data[n].points==nyanCost) and data[n].nyan==false then
1066
data[n].inventory = data[n].inventory.."\n"..text[n].nyanInv
1067
data[n].objects=212
1068
tfm.exec.chatMessage(text[n].boughtNyan,n)
1069
1070
data[n].nyan=true
1071
data[n].points=data[n].points-nyanCost
1072
1073
elseif a=="buyUltraCannon" and (data[n].points>ultraCannonCost or data[n].points==ultraCannonCost) and data[n].ultraCannon==false then
1074
data[n].inventory = data[n].inventory.."\n"..text[n].ultraCannonInv
1075
data[n].objects=1709
1076
tfm.exec.chatMessage(text[n].boughtUltraCannon,n)
1077
1078
data[n].ultraCannon=true
1079
data[n].points=data[n].points-ultraCannonCost
1080
elseif a=="buyCake" and (data[n].points>cakeCost or data[n].points==cakeCost) and data[n].cake==false then
1081
data[n].inventory=data[n].inventory.."\n"..text[n].cakeInv
1082
1083
data[n].objects=207
1084
tfm.exec.chatMessage(text[n].boughtCake,n)
1085
data[n].cake=true
1086
data[n].points=data[n].points-cakeCost
1087
elseif a=="buyMechAnvil" and (data[n].points>mechAnvilCost or data[n].points==mechAnvilCost) and data[n].mechAnvil==false then
1088
data[n].inventory=data[n].inventory.."\n"..text[n].mechAnvilInv
1089
1090
data[n].objects=1002
1091
tfm.exec.chatMessage(text[n].boughtMechAnvil,n)
1092
data[n].mechAnvil=true
1093
data[n].points=data[n].points-mechAnvilCost
1094
elseif a=="buyRock" and (data[n].points>rockCost or data[n].points==rockCost) and data[n].rock==false then
1095
data[n].inventory=data[n].inventory.."\n"..text[n].rockInv
1096
1097
data[n].objects=1003
1098
tfm.exec.chatMessage(text[n].boughtRock,n)
1099
data[n].rock=true
1100
data[n].points=data[n].points-rockCost
1101
1102
elseif a=="buy2Lives" and (data[n].points>Lives2 or data[n].points==Lives2) and data[n].lives2==false then
1103
data[n].normalLives=2
1104
tfm.exec.chatMessage(text[n].nowHave2Lives,n)
1105
print(data[n].lives)
1106
data[n].points=data[n].points-Lives2
1107
data[n].lives2=true
1108
elseif a=="buyCompanion" and (data[n].points>companionCost or data[n].points==companionCost) and data[n].companion==false then
1109
data[n].objects=61
1110
data[n].inventory = data[n].inventory.."\n"..text[n].companionInv
1111
data[n].companion=true
1112
1113
data[n].points=data[n].points-companionCost
1114
tfm.exec.chatMessage(text[n].boughtCompanion,n)
1115
elseif a=="buyShamanCannon" and (data[n].points>shamanCannonCost or data[n].points==shamanCannonCost) and data[n].shamanCannon==false then
1116
data[n].objects=1704
1117
data[n].inventory = data[n].inventory.."\n"..text[n].shamanCannonInv
1118
data[n].shamanCannon=true
1119
1120
data[n].points=data[n].points-shamanCannonCost
1121
tfm.exec.chatMessage(text[n].boughtshamanCannon,n)
1122
elseif a=="buyWatermelon" and (data[n].points>watermelonCost or data[n].points==watermelonCost) and data[n].watermelon==false then
1123
data[n].objects=1706
1124
data[n].inventory = data[n].inventory.."\n"..text[n].watermelonInv
1125
data[n].watermelon=true
1126
1127
data[n].points=data[n].points-watermelonCost
1128
tfm.exec.chatMessage(text[n].boughtWatermelon,n)
1129
1130
end
1131
end
1132
1133
function eventPlayerDied(n)
1134
1135
if data[n].role=="Death" and data[n].afk==false then
1136
1137
tfm.exec.respawnPlayer(n)
1138
tfm.exec.movePlayer(n,200,30,false,0,0,false)
1139
end
1140
if data[n].role=="Death" and data[n].afk==true then
1141
1142
tfm.exec.newGame(maps[math.random(#maps)])
1143
end
1144
data[n].lives=data[n].lives-1
1145
if data[n].role=="Runner" and data[n].lives==1 then
1146
tfm.exec.respawnPlayer(n)
1147
end
1148
if data[n].role=="Runner" and data[n].lives==0 then
1149
runner=runner-1
1150
print(runner)
1151
count()
1152
end
1153
1154
1155
1156
wonCountDown=-5
1157
1158
end
1159
if runner<1 then
1160
tfm.exec.newGame(maps[math.random(#maps)])
1161
end
1162
1163
1164
1165
1166
1167
print(death)
1168
print(runner)
1169
1170
print(mice)
1171
1172
function eventPlayerLeft(n)
1173
mice=0
1174
countMice()
1175
names={}
1176
for n in pairs(tfm.get.room.playerList) do
1177
table.insert(names,n)
1178
end
1179
1180
data[n].isInRoom=false
1181
mice=mice-1
1182
if mice<2 then
1183
for n,player in pairs(tfm.get.room.playerList) do
1184
tfm.exec.chatMessage("<R>"..text[n].need2People,n)
1185
end
1186
end
1187
if n==randomDeath then
1188
randomDeath=names[math.random(math.floor(mice))]
1189
end
1190
if data[n].role=="Runner" then
1191
runner=runner-1
1192
elseif data[n].role=="Death" then
1193
death=death-1
1194
end
1195
end
1196
1197
1198
1199
1200
for n,player in pairs(tfm.get.room.playerList) do
1201
data[n].pointsAndScore=data[n].points.." "..data[n].name
1202
end
1203
1204
function eventSummoningEnd(n,id,x,y,angle,t)
1205
print(id)
1206
tfm.exec.removeObject(t.id)
1207
end
1208
1209
system.disableChatCommandDisplay("p",true)
1210
function eventChatCommand(n, c)
1211
if c=="profile" then
1212
profile(n)
1213
end
1214
if c=="mice" then
1215
print(runner)
1216
end
1217
	if c:sub(0,7)=="profile" and Dp(c:sub(9)) then
1218
1219
		l = c:sub(9,9):upper()..c:sub(10):lower()
1220
1221
removeTextAreas(n)
1222
ui.addTextArea(110, "<p align='center'><font size='12'><font color='#000000'><font face='calibri'>"..l, n, 551, 89, 233, 278, 0xffd900, 0x075214, 1, true)
1223
ui.addTextArea(18, "<p align='left'><font size='13'><font face='calibri'><font color='#FFFFFF'>"..text[n].points..": <br>"..data[l].points.." <br><br>"..text[n].winsAsDeath..": <br>"..data[l].winsAsDeath.."<br><br>"..text[n].winsAsRunner..": <br>"..data[l].winsAsRunner, n, 557, 136, 105, 226, 0x966a03, 0x294d12, 1, true)
1224
ui.addTextArea(19, "<p align='left'><font size='13'><font face='calibri'><font color='#FFFFFF'>"..text[n].description..": "..data[l].description, n, 675, 136, 104, 226, 0x966a03, 0x294d12, 1, true)
1225-
ui.addTextArea(25, "<p align='center'><font size='13'><a href='event:close'><font color='#505050'>\n"..text[n].close, n, 551, 368, 233, 36, 0xffd900, 0x075214, 1, true)
1225+
ui.addTextArea(25, "<p align='center'><font size='13'><a href='event:close'><font color='#505050'>"..text[n].close, n, 551, 368, 233, 36, 0xffd900, 0x075214, 1, true)
1226
1227
end
1228
end
1229
1230
function eventPopupAnswer(id, n, a)
1231
local click=a:match("<a href='")
1232
if not click then
1233
data[n].description = a
1234
1235
profile(n)
1236
data[n].p=1
1237
end
1238
end