×

Langue

Fermer
Atelier 801
  • Forums
  • Dev Tracker
  • Connexion
    • English Français
      Português do Brasil Español
      Türkçe Polski
      Magyar Română
      العربية Skandinavisk
      Nederlands Deutsch
      Bahasa Indonesia Русский
      中文 Filipino
      Lietuvių kalba 日本語
      Suomi עברית
      Italiano Česky
      Hrvatski Slovensky
      Български Latviešu
      Estonian
  • Langue
  • Forums
  • /
  • Transformice
  • /
  • Modules
  • /
  • [Aide] Demandes de codes et d'explications
« ‹ 36 / 70 › »
[Aide] Demandes de codes et d'explications
+Touninou
« Citoyen »
1403465460000
    • +Touninou#0000
    • Profil
    • Derniers messages
    • Tribu
#701
  0
Ecrit ici ce que tu veux, et ça dépend ce que tu veux apprendre
Tortuegreen
« Censeur »
1403516280000
    • Tortuegreen#0000
    • Profil
    • Derniers messages
    • Tribu
#702
  0
Comment on fait pour voir les valeurs présentes dans une table avec print() svp ?
Podoko
« Citoyen »
1403521380000
    • Podoko#0000
    • Profil
    • Derniers messages
    • Tribu
#703
  0
for key, value in pairs(nom_du_tableau) do
  print(key..' : '..tostring(value))
end

Dernière modification le 1403521440000
Tortuegreen
« Censeur »
1403542440000
    • Tortuegreen#0000
    • Profil
    • Derniers messages
    • Tribu
#704
  0
^ Merci !

J'ai trois tables propres à chaque souris :
for name,player in pairs(tfm.get.room.playerList) do
players[name] = {
Ligne1 = {},
Ligne2 = {},
Ligne3 = {}
}
end


Je voudrais pouvoir rajouter des valeurs dans chacunes mais ça ne marche pas :
table.insert(players[name].Ligne1, "1")

Vous pouvez m'indiquer mon erreur svp ?
Nathaan
« Citoyen »
1403606880000
    • Nathaan#0000
    • Profil
    • Derniers messages
    • Tribu
#705
  0
As-tu déjà déclaré players ?

(càd avant de faire players[name] = {}, as-tu fait players = {} ?)

Dans ton table.insert, est-ce que le name est définit ?
Elyesou
« Citoyen »
1403624100000
    • Elyesou#0000
    • Profil
    • Derniers messages
    • Tribu
#706
  0
Ou peut on trouver les codes du fond des anciennes maps de tigrou ? a par ceux qu'on a déjà dans le forum .. un p'tit coup de main ?
Tortuegreen
« Censeur »
1403634660000
    • Tortuegreen#0000
    • Profil
    • Derniers messages
    • Tribu
#707
  0
Nathaan a dit :
As-tu déjà déclaré players ?

(càd avant de faire players[name] = {}, as-tu fait players = {} ?)

Dans ton table.insert, est-ce que le name est définit ?

Après réflexion, j'ai mis les trois tables Liste dans un autre emplacement pour éviter de faire des doublons. Ca marche pour celui-là.

Maintenant, j'ai un autre problème non lié au précédent mais avec la même table players = {}
J'ai : if table.getn(players[name].Liste1) == 5 then

Mon message d'erreur : Tortuegreen.lua:166: bad argument: table expected, got nil (la ligne 166 correcpond à la ligne de code ci-dessus)
J'ai défini name et la table players = {} est globale au code.
Podoko
« Citoyen »
1403636280000
    • Podoko#0000
    • Profil
    • Derniers messages
    • Tribu
#708
  0
players[name].Liste1 vaut nil, c'est de là que vient le problème (utilise print(players[name].Liste1)) pour vérifier.
Tortuegreen
« Censeur »
1403638980000
    • Tortuegreen#0000
    • Profil
    • Derniers messages
    • Tribu
#709
  0
Podoko a dit :
players[name].Liste1 vaut nil, c'est de là que vient le problème (utilise print(players[name].Liste1)) pour vérifier.

Apparemment oui.
Init Error : Tortuegreen.lua:309: attempt to index ? (a nil value)

Comment on peut arranger ça ?
Thewav
« Citoyen »
1403691840000
    • Thewav#0095
    • Profil
    • Derniers messages
    • Tribu
#710
  0
Es tu sur que players[name] existe ?

Tu peux toujours mettre :
a dit :
if players[name] then
... ton code
end

Mais il vaut mieux chercher pourquoi ton players[name] n'existe pas, le meilleur moyen est d'utiliser des print() par ci par là dans ton code.
Tortuegreen
« Censeur »
1403697480000
    • Tortuegreen#0000
    • Profil
    • Derniers messages
    • Tribu
#711
  0
Oui, j'ai trouvé ce matin d'où venait mon erreur. L'erreur était humaine là (j'ai écrit Liste au lieu de Ligne). ^^'
Thewav
« Citoyen »
1403790540000
    • Thewav#0095
    • Profil
    • Derniers messages
    • Tribu
#712
  0
Avec un peu de retard j'ai mis la documentation à jour :

a dit :
• Version 0.19, le 20 juin 2014

Changements :
- Rajout des paramètres timeElapsed et timeElapsedSinceRespawn pour eventPlayerWon

a dit :
eventPlayerWon (playerName, timeElapsed, timeElapsedSinceRespawn)
Cet évènement se déclenche lorsqu'un joueur rentre dans le trou.

- playerName:string → pseudo du joueur
- timeElapsed:int → temps écoulé depuis le début de la map en seconde*0.01 (voir exemple)
- timeElapsedSinceRespawn:int → temps écoulé depuis le respawn du joueur en seconde*0.01 (voir exemple)

Exemple :
function eventPlayerWon(playerName,timeElapsed,timeElapsedSinceRespawn)
print(playerName .. " a réussi à rapporter le fromage au trou en "..timeElapsed*0.01.. " s !")
end

Dernière modification le 1403790600000
Keltah
« Citoyen »
1404911640000
    • Keltah#0000
    • Profil
    • Derniers messages
    • Tribu
#713
  0
Quelqu'un a un substitut au sleep(), vu qu'on a même pas le droit à ça ?
Youspin
« Citoyen »
1405018560000
    • Youspin#0000
    • Profil
    • Derniers messages
#714
  0
Voici le code pour Ce teleporter :

function eventMouse(playerName, xMousePosition, yMousePosition)
local message = "Le joueur " .. playerName
message = message .. " a cliqué à la position (" .. xMousePosition .. "," .. yMousePosition .. ")."
tfm.exec.movePlayer (playerName, xMousePosition, yMousePosition, false, 0, 0, true)
print(message)
end
for playerName in pairs(tfm.get.room.playerList) do
system.bindMouse(playerName, true) -- on écoute l'évènement "clic"
end
Rectop
« Citoyen »
1405354020000
    • Rectop#0000
    • Profil
    • Derniers messages
    • Tribu
#715
  0
Comment on fait pour stocker le choix d'un joueur? Il choisit entre divers trucs et après si il fait une action spécifique le résultat dépendra du choix fait au début.
Keltah
« Citoyen »
1405354320000
    • Keltah#0000
    • Profil
    • Derniers messages
    • Tribu
#716
  0
Le choix sera fait comment ? Par commande, par une popup ?
Rectop
« Citoyen »
1405354860000
    • Rectop#0000
    • Profil
    • Derniers messages
    • Tribu
#717
  0
Avec un textarea ^^
Tortuegreen
« Censeur »
1405361400000
    • Tortuegreen#0000
    • Profil
    • Derniers messages
    • Tribu
#718
  0
Comment on fait pour dire "Si ce pseudo se trouve dans la table x alors" svp ?

if name .................. sourisVerte then

Dernière modification le 1405361460000
Podoko
« Citoyen »
1405363140000
    • Podoko#0000
    • Profil
    • Derniers messages
    • Tribu
#719
  0
Il n'y a pas de fonction prédéfinie pour ça donc on est souvent obligé de la créer.


function table.find ( tab, elmt )
    for key, val in pairs(tab) do
        if val==elmt then return true, key end
    end
    return false
end

Ensuite tu peux appeler cette fonction de cette manière :

maTable = { "coucou", "je", ["cle"]="suis", ["cle2"]="caché" }
val1 = table.find( maTable, "caché" ) -- renvoi true et "cle2"
val2 = table.find( maTable, "toto" ) -- renvoi false

if table.find(sourisVerte, name) then
    -- ...
end

Dernière modification le 1405374480000
Keltah
« Citoyen »
1405417140000
    • Keltah#0000
    • Profil
    • Derniers messages
    • Tribu
#720
  0
Rectop a dit :
Avec un textarea ^^

Tu ne peux pas obtenir de réponse avec un TextArea, c'est une PopUp.

reponse = {}
tfm.exec.newGame(math.random(0,143))

function eventNewGame()
ui.addPopup(0, 2, "Question ?", int, 280, 100, 270)
end

function eventPopupAnswer(id,name,reponse)
reponse[name] = reponse
end

function eventChatCommand(name,message)
if message=="verife" then
if type(reponse[name]) ~= "nil" then
print("La réponse de ".. name .." est ".. reponse[name] ..".")
else
print(name .. " n'a pas donné de réponse.")
end
end
end


!verife donne la valeur de la réponse de la personne qui a tapé la commande, et précise s'il n'y a pas de réponse.

Dernière modification le 1405428960000
  • Forums
  • /
  • Transformice
  • /
  • Modules
  • /
  • [Aide] Demandes de codes et d'explications
« ‹ 36 / 70 › »
© Atelier801 2018

Equipe Conditions Générales d'Utilisation Politique de Confidentialité Contact

Version 1.27