Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- -- Initialisation des panneaux d'affichage --
- ui.addTextArea(1, "<p align='center'><font color='#BABD2F'><font size='11'>CheeseSpire par Animjarcanin (Jiheyr) !</font>", NIL, 5, 25, 730, 20, 0x1C3C41, 0x1C3C41, 1.2)
- ui.addTextArea(2, "<p align='center'><font color='#E3B55A'><font size='14'><font face='Soopafresh'><b></font>", NIL, 740, 25, 55, 25, 0, 0, 0)
- -- Désactivation des paramètres dérangeant --
- tfm.exec.disableAutoShaman(true) -- Les chamanes ne sont plus choisis automatiquement.
- tfm.exec.disableAutoScore(true) -- Les points ne sont plus comptés automatiquement.
- tfm.exec.disableAutoTimeLeft(true) -- Le temps n'est plus changé automatiquement.
- tfm.exec.disableAutoNewGame(true) -- Les maps ne passent plus automatiquement.
- -- Lors du lancement du module --
- tfm.exec.newGame(3019964) -- Carte de démarrage
- tfm.exec.setGameTime(10) -- Temps de la carte de démarrage
- -- MapList --
- maps = {"71", "74", "67", "70", "55", "57", "58", "59", "22", "24", "28", "29", "@292057", "@30798", "@1662570", "@2208335", "@1958341", "@511007", "@1550076", "2", "8", "11", "13", "14", "19"}
- -- ShamanObjectList --
- itemrandom = {"54", "2", "10", "18", "39", "40", "45", "46", "61"}
- -- Variable générale --
- time = 0 -- Gestion du délai de la réapparition du chamane lors de son décès.
- -- MapList, Mort du chamane --
- function eventLoop(t1,t2)
- if t2 < 1 then
- tfm.exec.newGame(maps[math.random(#maps)]) -- Choix aléatoire de la prochaine carte.
- tfm.exec.setGameTime(300) -- Temps de la prochaine carte. (5 minutes)
- end
- time = time + (1/2) -- En modifie la variable du temps, on ajoute 0,5s.
- if time==5 then -- Lorsque la variable du temps est à 5,0s.
- for name, player in pairs(tfm.get.room.playerList) do -- Pour tous les joueurs, faire...
- if tfm.get.room.playerList[name].isShaman then -- Si ce joueur est chamane.
- if tfm.get.room.playerList[name].isDead then -- Si ce joueur chamane est mort.
- tfm.exec.respawnPlayer(name) -- Le faire réapparaître.
- end
- end
- end
- end
- end
- -- Losque qu'une souris prendre un fromage --
- function eventPlayerGetCheese(name)
- if tfm.get.room.playerList[name].isShaman then -- Si la souris est un chamane.
- tfm.exec.killPlayer(name) -- On tue le chamane.
- else
- ui.updateTextArea(1, "Vous avez un fromage, ramenez-le !", name) -- On notifie la prise du fromage à la souris.
- ui.updateTextArea(2, "+5pts", name) -- On lui notifie le nombre de points gagnés.
- tfm.exec.setPlayerScore(name, 5, true) -- On enregistre ces points-là.
- end
- end
- -- Lorsque qu'une souris gagne/rammène un fromage --
- function eventPlayerWon(name)
- ui.updateTextArea(1, "Superbe, tenez-vous prête ! Repartez à la chasse !", name) -- On indique la victoire à la souris.
- ui.updateTextArea(2, "+20pts", name) -- On lui notifie le nombre de points gagnés.
- tfm.exec.setPlayerScore(name, 20, true) -- On enregistre ces points-là.
- tfm.exec.respawnPlayer(name) -- On fait renaître la souris.
- if tfm.get.room.playerList[name].score >= 100 then -- Si la souris avait plus (+) de 100 points.
- ui.updateTextArea(1, "Le gagnant est... " .. name .. " !", NIL) -- On indique à toutes les souris qu'elle a gagné.
- ui.updateTextArea(2, "###", NIL) -- On met à zéro les compteurs.
- tfm.exec.newGame(maps[math.random(#maps)]) -- On initialise la prochaine carte.
- tfm.exec.setGameTime(300) -- On initialise le temps de la prochaine carte.
- for name, player in pairs(tfm.get.room.playerList) do -- Pour toutes les souris, faire...
- tfm.exec.setPlayerScore(name, 0, false) -- Remettre le compteur à zéro.
- end
- tfm.exec.setShaman(name) -- On nomine le prochain chamane, soit, la souris gagnante.
- tfm.exec.setPlayerScore(name, 0, false) -- On met le compteur du chamane à zéro, également.
- tfm.exec.setUIShamanName(name .. ", l'horrible") -- On nomme le chamane.
- tfm.exec.setUIMapName("CheeseSpire's Map") -- On nomme la carte.
- end
- end
- -- Lorsqu'un joueur meurt --
- function eventPlayerDied(name)
- if tfm.get.room.playerList[name].isShaman then -- Si le joueur mort est un chamane.
- ui.updateTextArea(1, "TUEZ ! TUEZ ! TUEZ !", name) -- On notifie la mort.
- tfm.exec.setPlayerScore(name, 0, false) -- On s'assure que les points sont bien égaux à 0.
- time = 0 -- On remet la variable du temps à zéro, pour le bon décompte du respawn.
- else
- ui.updateTextArea(1, "Vous êtes morte, mais un guide spirituel vous a ramené à la vie. Restez en vie, COUREZ !", name) -- On notifie la mort et le respawn.
- ui.updateTextArea(2, "-10pts", name) -- On notifie les points perdus.
- tfm.exec.setPlayerScore(name, -10, true) -- On enrengistre ces points-là.
- tfm.exec.respawnPlayer(name) -- On fait respawn la souris.
- end
- end
- -- Lorsqu'un joueur entre dans un salon --
- function eventNewPlayer(name)
- tfm.exec.setPlayerScore(name, 0, false) -- A cette nouvelle souris, on initialise les points à 0.
- for i, key in ipairs({32}) do -- Pour toutes les nouvelles souris, on enregistre la touche 'espace'.
- tfm.exec.bindKeyboard(name, key, true, true)
- end
- ui.addPopup(1,0,"<p align='center'><font color='#BABD2F' size='25' face='Soopafresh'>#CheeseSpire</font></p><br><p align='left'><font size='10'><i>• • • Bienvenue les souris ! Votre chef spirituel vous a envoyé en mission. Vous devez récupérer un fromage tout en ayant plus de 100 points. Cependant, n'oubliez pas que vos adversaires ne sont plus des souriceaux. Ils seront prêt à vous tuer grâce à des flèches, et le chamane diaboliquement kamikaze, n'hésitera pas à se sacrifier pour vous écraser avec un enclume. Cependant, n'ayez crainte ! Votre chef spirituel est là pour vous soigner et vous donne des flèches dès que vous possédez plus de 4 points ! Bon jeu ! ^_^</i><br><br>• • • <b>Touche principale :</b> Espace<br>• • • <b>Page officielle du mini-jeu :</b> www.transformice.com/forum/?s=451723&p=30</font></p><br><br><br><br><p align='right'><font size='8' color='#FF2302'>Version 1.0</font></p>", name, 100, 75, 600); -- On affiche les consignes.
- end
- -- Touche espace --
- function eventKeyboard(name, key, down, x, y)
- if key==32 then -- Lorsque le joueur appuie sur la touche 'espace'.
- score = tfm.get.room.playerList[name].score -- On obtient le score du joueur qui a appuyé sur la touche.
- if score >= 5 then -- Si le score est égal ou supérieur à 5.
- direction = tfm.get.room.playerList[name].isFacingRight -- On obtient sa direction.
- if direction==true then -- La souris regarde à droite.
- tfm.exec.addShamanObject(35, x+35, y-15, 0, 25, 0, false) -- On tire une flèche à droite.
- else
- tfm.exec.addShamanObject(35, x-35, y-15, 180, -25, 0, false) -- La souris regarde de l'autre côté, on tire à gauche.
- end
- tfm.exec.setPlayerScore(name, -1, true) -- On retire 1 point à la souris.
- spire = (tfm.get.room.playerList[name].score)-5 -- On obtient le stock de flèches.
- ui.updateTextArea(2, spire .. " F", name) -- On affiche le stock de flèche.
- else
- ui.updateTextArea(1, "Vous ne possédez pas assez de points pour lancer une flèche !", name) -- On informe de l'inaptitude à tirer une flèche.
- spire = (tfm.get.room.playerList[name].score)-4 -- On obtient le stock de flèches.
- ui.updateTextArea(2, spire .. " F", name) -- On affiche ce stock.
- end
- if tfm.get.room.playerList[name].isShaman then -- Si le joueur est chamane.
- item = itemrandom[math.random(#itemrandom)] -- On choisie aléatoire un objet chamanifique.
- if tfm.get.room.playerList[name].isDead == true then -- Si le chamane est mort.
- else
- tfm.exec.addShamanObject(item, x, y, 0, 0, 0, false) -- On invoque cet objet à la position du chamane.
- tfm.exec.killPlayer(name) -- Puie on tue ce chamane.
- end
- end
- end
- end
- -- Pour tous joueurs présent au lancement --
- for name, player in pairs(tfm.get.room.playerList) do
- eventNewPlayer(name) -- On les notifie comme 'nouveaux arrivants'.
- end
- -- Lors d'une invocation --
- function eventSummoningStart(playerName)
- tfm.exec.killPlayer(playerName) -- On tue le chamane.
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement