×

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
« ‹ 62 / 70 › »
[Aide] Demandes de codes et d'explications
Cactusjack
« Citoyen »
1482842580000
    • Cactusjack#6425
    • Profil
    • Derniers messages
    • Tribu
#1221
  0
Animjarcanin a dit :
Animjarcanin a dit :
Peut-être pourras-tu trouver ton bonheur ici ! On dit "Merci Podoko". :)


Merci Podoko et merci à toi !
Sourialp
« Citoyen »
1482844140000
    • Sourialp#0000
    • Profil
    • Derniers messages
    • Tribu
#1222
  0
j'ai 2 question:

_ comment on introduit une position dans évent keyboard ?? pck jc comment faire l'évent normale, mais j'ai jamais vu avec une position :/

_ comment dire:
Si le joueur est mort 1 fois ou plus,
si la touche 32 est enfoncer,

faire (nimporte quoi, vous compliquer pas à chercher)

je pense que l'on pourrai utiliser une table et faire;
si playeur name mort then
+1 à la table
end

si la tabe est > 0 et si key==32 alors...

vous pensez sa pourrai marcher pck je sais pas trop utiliser les table ^^"

Dernière modification le 1482847680000
Bobolemouton
« Censeur »
1482849660000
    • Bobolemouton#9848
    • Profil
    • Derniers messages
    • Tribu
#1223
  0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
player = {}

-- Après une nouvelle map, on met le nombre de morts par joueur à 0
function eventNewGame()
for all in pairs(tfm.get.room.playerList) do
player[all][morts] = 0
end
end

-- Quand un joueur meurt, on incrémente le nombre de morts du joueur de 1
function eventPlayerDied(name)
player[name][morts] = player[name][morts] + 1
end

-- Quand le joueur clique sur espace, et qu'il est mort plus d'une fois...
-- "xPlayerPosition" et "yPlayerPosition" correspondent à la position de la souris lorsque tu cliques sur "key"
function eventKeyboard (name, key, down, xPlayerPosition, yPlayerPosition)
if player[name][morts] > 0 and key == 32 then
...
end
end
Code non testé
Si tu as des difficultés à utiliser les tables lis le 2ème post de ce topic : Clique

Dernière modification le 1482850260000
Sourialp
« Citoyen »
1482850560000
    • Sourialp#0000
    • Profil
    • Derniers messages
    • Tribu
#1224
  0
non sa crash ;,(
je fait: pour voir i sa marche mais sa crash
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
player = {}


-- Après une nouvelle map, on met le nombre de morts par joueur à 0
function eventNewGame()
for all in pairs(tfm.get.room.playerList) do
player[all][morts] = 0
end
end

-- Quand un joueur meurt, on incrémente le nombre de morts du joueur de 1
function eventPlayerDied(name)
player[name][morts] = player[name][morts] + 1
end

-- Quand le joueur clique sur espace, et qu'il est mort plus d'une fois...
-- "xPlayerPosition" et "yPlayerPosition" correspondent à la position de la souris lorsque tu cliques sur "key"
function eventKeyboard (name, key, down, xPlayerPosition, yPlayerPosition)
if player[name][morts] > 0 and key == 32 then
tfm.exec.setUIMapName("TESTE")
end
end

Dernière modification le 1482852540000
Mcfloy
« Citoyen »
1482854520000
    • Mcfloy#0000
    • Profil
    • Derniers messages
    • Tribu
#1225
  0
Il faut utliser system.bindKeyboard pour permettre au module d'écouter la touche.
Sourialp
« Citoyen »
1482855120000
    • Sourialp#0000
    • Profil
    • Derniers messages
    • Tribu
#1226
  0
OK, mnt c bon, mais sa crash quand on meurt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
function main()
player = {}
tfm.exec.disableAutoTimeLeft (true)
tfm.exec.disableAutoNewGame (true)
tfm.exec.setUIMapName("TESTE")
end

function eventNewPlayer(name)
tfm.exec.bindKeyboard(name,32,true,true)
end


-- Après une nouvelle map, on met le nombre de morts par joueur à 0
function eventNewGame()
for all in pairs(tfm.get.room.playerList) do
player[all][morts] = 0
end
end

-- Quand un joueur meurt, on incrémente le nombre de morts du joueur de 1
function eventPlayerDied(name)
player[name][morts] = player[name][morts] + 1
end

-- Quand le joueur clique sur espace, et qu'il est mort plus d'une fois...
-- "xPlayerPosition" et "yPlayerPosition" correspondent à la position de la souris lorsque tu cliques sur "key"
function eventKeyboard (name, key, down, xPlayerPosition, yPlayerPosition)
if player[name][morts] > 0 and key == 32 then
tfm.exec.movePlayer(name,0,0,true,0,-70,false)
end
end
main()

Dernière modification le 1482856080000
Tortuegreen
« Censeur »
1482861000000
    • Tortuegreen#0000
    • Profil
    • Derniers messages
    • Tribu
#1227
  0
sourialp a dit :
OK, mnt c bon, mais sa crash quand on meurt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
function main()
player = {}
tfm.exec.disableAutoTimeLeft (true)
tfm.exec.disableAutoNewGame (true)
tfm.exec.setUIMapName("TESTE")
end

function eventNewPlayer(name)
tfm.exec.bindKeyboard(name,32,true,true)
end


-- Après une nouvelle map, on met le nombre de morts par joueur à 0
function eventNewGame()
for all in pairs(tfm.get.room.playerList) do
player[all][morts] = 0
end
end

-- Quand un joueur meurt, on incrémente le nombre de morts du joueur de 1
function eventPlayerDied(name)
player[name][morts] = player[name][morts] + 1
end

-- Quand le joueur clique sur espace, et qu'il est mort plus d'une fois...
-- "xPlayerPosition" et "yPlayerPosition" correspondent à la position de la souris lorsque tu cliques sur "key"
function eventKeyboard (name, key, down, xPlayerPosition, yPlayerPosition)
if player[name][morts] > 0 and key == 32 then
tfm.exec.movePlayer(name,0,0,true,0,-70,false)
end
end
main()

Code Lua

1
2
3
function eventPlayerDied(name)
player[name][morts] = player[name][morts] + 1
end

morts est une variable, pas une position. Donc pour l'appeler, tu as deux solutions :
1
2
player[name]["morts"]
player[name].morts
Sourialp
« Citoyen »
1482861480000
    • Sourialp#0000
    • Profil
    • Derniers messages
    • Tribu
#1228
  0
ok merci de l'info, j'ai changer quelque ligne pour simplifier ou amélioré, sa crash plus, mais sa fait rien quand on enfonce la bare d'espace, vous savez pk ??
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
function main()
player = {}
tfm.exec.disableAutoTimeLeft (true)
tfm.exec.disableAutoNewGame (true)
tfm.exec.setUIMapName("TESTE")
end


function eventNewPlayer(name)
tfm.exec.bindKeyboard(name,32,true,true)
end

-- Après une nouvelle map, on met le nombre de morts par joueur à 0
function eventNewGame()
for all in pairs(tfm.get.room.playerList) do
player[all].morts = 0
end

-- Quand un joueur meurt, on incrémente le nombre de morts du joueur de 1
function eventPlayerDied(name)
player[name].morts = player[name].morts + 1
end

for name,player in pairs(tfm.get.room.playerList) do
eventNewPlayer(name)
end


-- Quand le joueur clique sur espace, et qu'il est mort plus d'une fois...
-- "xPlayerPosition" et "yPlayerPosition" correspondent à la position de la souris lorsque tu cliques sur "key"
function eventKeyboard (name, key, down, xPlayerPosition, yPlayerPosition)
if player[name].morts > 0 and key == 32 then
tfm.exec.setUIMapName("TESTE REUSSI")
end
end
end
main()


je pense savoir pk, c'est la ligne 13 a 17 qui pose problème, elle devrais se trouver dans la fonction man() mais quand je l'aise dedans en enlevant le "end" de la ligne 17, ba sa crash... :(

Dernière modification le 1482862740000
Bobolemouton
« Censeur »
1482862440000
    • Bobolemouton#9848
    • Profil
    • Derniers messages
    • Tribu
#1229
  0
à la fin tu as écrit "main" au lieu de "main()"
edit : ah bah t'as corrigé

Dernière modification le 1482862500000
Mcfloy
« Citoyen »
1482933120000
    • Mcfloy#0000
    • Profil
    • Derniers messages
    • Tribu
#1230
  0
Déplace le end de la ligne 36 entre la ligne 17 et 18.
Il te manque un end pour fermer ta fonction eventNewGame, et un end de trop à la fin de ton programme.

N'hésite pas à indenter correctement ton code.
Sourialp
« Citoyen »
1482939720000
    • Sourialp#0000
    • Profil
    • Derniers messages
    • Tribu
#1231
  0
oe mais si je fais sa sa fait crash quand on meurt ou clique sur espace :/ (et le end en trop ct une gaffe XD )
Bobolemouton
« Censeur »
1482940500000
    • Bobolemouton#9848
    • Profil
    • Derniers messages
    • Tribu
#1232
  0
essaye en ajoutant "eventNewGame()" dans la fonction main()
Massi
« Consul »
1483216500000
    • Massi#0095
    • Profil
    • Derniers messages
    • Tribu
#1233
  0
je veut un script Countdown svp aider moi 10 9 8 7 6 5 4 3 2 1
Mcfloy
« Citoyen »
1483348380000
    • Mcfloy#0000
    • Profil
    • Derniers messages
    • Tribu
#1235
  0
Il manque le "then" et pour les conditions ce serait mieux de mettre deux signes égal.

Dernière modification le 1483348440000
Sourialp
« Citoyen »
1483446720000
    • Sourialp#0000
    • Profil
    • Derniers messages
    • Tribu
#1237
  0
dites comment on met de la position dans keyboard, on met des "," ???
Mcfloy
« Citoyen »
1483465740000
    • Mcfloy#0000
    • Profil
    • Derniers messages
    • Tribu
#1238
  0
sourialp a dit :
dites comment on met de la position dans keyboard, on met des "," ???

C'est à dire ? Récupérer les positions ? Elles sont contenues dans les paramètres de la méthode.

Si tu veux positionner une souris, regarde avec movePlayer.
Sourialp
« Citoyen »
1483466280000
    • Sourialp#0000
    • Profil
    • Derniers messages
    • Tribu
#1239
  0
ba enfaite c'est dans l'API on peut voir que l'on peut rajouter une position a l'évent;

eventKeyboard (playerName, keyCode, down,
xPlayerPosition, yPlayerPosition)

Mais j'ai jamais vu sa dans les codes, alors je voudrais savoir si c'est possible de le faire et comment ;)

(sa ferai; si le touche ... est enfoncé et que le joueur est a x, y position, then...)

Dernière modification le 1483466340000
Mcfloy
« Citoyen »
1483473960000
    • Mcfloy#0000
    • Profil
    • Derniers messages
    • Tribu
#1240
  0
Code Lua

1
2
3
4
5
6
7
8
9
10
11
12
function eventKeyboard(playerName, keyCode, down, xPosition, yPosition)
-- down nous donnera true vu qu'on écoute uniquement que lorsqu'on appuie
-- xPosition et yPosition donnent la position de la souris
-- playerName le nom de la souris
-- keyCode est le code AS3 correspondant à la touche
print(playerName .. " - X: " .. xPosition .. " - Y: " .. yPosition)
end

for player,_ in pairs(tfm.get.room.playerList) do
-- On écoute la touche espace, et uniquement lorsqu'on appuie dessus
system.bindKeyboard(player, 32, true)
end

La liste des codes AS3 des touches du clavier sont disponibles ici.

L'exemple affiche le nom du joueur et sa position lorsqu'il appuiera sur "espace".
  • Forums
  • /
  • Transformice
  • /
  • Modules
  • /
  • [Aide] Demandes de codes et d'explications
« ‹ 62 / 70 › »
© Atelier801 2018

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

Version 1.27