×

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
« ‹ 65 / 70 › »
[Aide] Demandes de codes et d'explications
Mcfloy
« Citoyen »
1485073200000
    • Mcfloy#0000
    • Profil
    • Derniers messages
    • Tribu
#1281
  0
Code Lua

1
2
3
4
5
text = "Je suis un mauvais test"

text = string.gsub(text, "mauvais ", "")

print(text) -- Affichera "Je suis un test"

Notons que j'ai mis un espace après le mot à enlever, mais que dans un soucis d'ergonomie c'est mieux de supprimer le mot sans espace et de créer une fonction trim pour supprimer les doubles espaces.
Surenzo
« Citoyen »
1485355140000
    • Surenzo#0000
    • Profil
    • Derniers messages
    • Tribu
#1282
  0
Désolé j'avais vue me message mais je ne t'ai pas répondu, j'arrive tzs bien à utiliser la fonction mais mercis pour ces rappels :3
Mistigrounet
« Consul »
1486068180000
    • Mistigrounet#0000
    • Profil
    • Derniers messages
    • Tribu
#1283
  0
Boooooooooooooooooooosoir

Est-il possible de sélectionenr aléatoirement un élément d'une table qui contient du texte ?

Code Lua

1
2
3
4
5
6
7
8
-- Exemple

couleur = {rouge, bleu, vert}
code = {rouge = '#FF0000', vert = '#00AA00', bleu = '#0000FF'}

alea = -- un mot parmi la table {couleur}

print (alea.." = "..code.alea) -- ex : rouge = #FF0000

Marci
Tortuegreen
« Censeur »
1486070340000
    • Tortuegreen#0000
    • Profil
    • Derniers messages
    • Tribu
#1284
  0
Mistigrounet a dit :
Boooooooooooooooooooosoir

Est-il possible de sélectionenr aléatoirement un élément d'une table qui contient du texte ?

Code Lua

1
2
3
4
5
6
7
8
-- Exemple

couleur = {rouge, bleu, vert}
code = {rouge = '#FF0000', vert = '#00AA00', bleu = '#0000FF'}

alea = -- un mot parmi la table {couleur}

print (alea.." = "..code.alea) -- ex : rouge = #FF0000

Marci

Code Lua

1
2
3
4
5
6
couleur = {"rouge", "bleu", "vert"}
code = {rouge = '#FF0000', vert = '#00AA00', bleu = '#0000FF'}

alea=couleur[math.random(#couleur)]

print(alea.." = "..code[alea])
Mistigrounet
« Consul »
1486118340000
    • Mistigrounet#0000
    • Profil
    • Derniers messages
    • Tribu
#1285
  0
Tortuegreen a dit :
Mistigrounet a dit :
Boooooooooooooooooooosoir

Est-il possible de sélectionenr aléatoirement un élément d'une table qui contient du texte ?

Code Lua

1
2
3
4
5
6
7
8
-- Exemple

couleur = {rouge, bleu, vert}
code = {rouge = '#FF0000', vert = '#00AA00', bleu = '#0000FF'}

alea = -- un mot parmi la table {couleur}

print (alea.." = "..code.alea) -- ex : rouge = #FF0000

Marci

Code Lua

1
2
3
4
5
6
couleur = {"rouge", "bleu", "vert"}
code = {rouge = '#FF0000', vert = '#00AA00', bleu = '#0000FF'}

alea=couleur[math.random(#couleur)]

print(alea.." = "..code[alea])

Merci !
Massi
« Consul »
1486672620000
    • Massi#0095
    • Profil
    • Derniers messages
    • Tribu
#1286
  0
comment je fais pour créer une liste de noms ex: Terre, Lune, ... etc. et quand je clique sur un nom la map se change
Athesdrake
« Citoyen »
1487093040000
    • Athesdrake#0000
    • Profil
    • Derniers messages
    • Tribu
#1287
  0
Voilà le code que tu attends, si j'ai bien compris ^^
Tu peux facilement ajouter des noms de maps dans la table 'liste_noms_maps'. (N'oublies pas les virgules)

code
Code Lua

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
adm = "Unlocker001"--l'admin, la personne qui peut changer le nom de la map
liste_noms_maps = {
{nom = "Terre", description = "Nom de la map de Terre"},
{nom = "Lune", description = "Nom de la map de la Lune"},
{nom = "Feu", description = "Feu"},
}--Tu peux rajouter des noms de maps simplement, sans oublier les virgules ! ({nom = "nom de la map", description = "description de la map"},
textNomsMap = ""

for k, data in pairs(liste_noms_maps)do
if data.nom and data.description then
textNomsMap = textNomsMap..("<a href='event:Nmap%s'>%s</a>\n"):format(data.nom, data.description)
end
end


function eventNewPlayer(name)
if name==adm then--onmets le textArea seulement pour la personne admin
ui.addTextArea(1, textNomsMap, name)
end
end

function eventTextAreaCallback(id, name, call)--Quand tu cliques sur le nom de la map
if call:sub(0,4)=="Nmap" then
ui.setMapName(call:sub(5))--ça mets le nom de la map
end
end

table.foreach(tfm.get.room.playerList, function(v) eventNewPlayer(v) end)
Mistigrounet
« Consul »
1487529420000
    • Mistigrounet#0000
    • Profil
    • Derniers messages
    • Tribu
#1288
  0
Code actuel
Code Lua

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
38
39
40
41
42
tfm.exec.disableAutoNewGame (true)
tfm.exec.disableAutoShaman (true)
tfm.exec.disableAfkDeath (true)
tfm.exec.disableWatchCommand (true)
tfm.exec.disableDebugCommand (true)
tfm.exec.disableMinimalistMode (true)
tfm.exec.newGame("@7011091")

-- Coordonnées de chaque point possible
points = {px1=240, py1=315, px2=345, py2=70, px3=765, py3=70, px4=520, py4=105, px5=275, py5=70, px6=520, py6=175, px7=625, py7=210, px8=730, py8=315, px9=345, py9=210, px10=520, py10=315}

-- Permet de choisir aléatoirement un point px[n] py[n]
function ajPts(nbr)
px=points["px"..tostring(nbr)]
py=points["py"..tostring(nbr)]
tfm.exec.addPhysicObject(1, px, py, {type=13, restitution=0.2, friction=0, width=12, height=12, color=0x000001, miceCollision=false})
tfm.exec.addPhysicObject(2, px, py, {type=13, restitution=0.2, friction=0, width=10, height=10, color=0x6A7495, miceCollision=false})
ui.addTextArea(12000, "<font color='#000001'><p align='center'><b>1</b></p></font>", pN, px-15, py-9, 30, 30, 0x000001, 0x000001, 0, false)
end

-- Nombre de point possible
maxPts=10

-- Position du premier point
nbr = math.random(1,maxPts)
ajPts(nbr)

for pN in pairs(tfm.get.room.playerList) do
system.bindKeyboard (pN, 32, true, true)
end

function eventKeyboard (pN, tch, down, xPP, yPP)
if tch == 32 then -- Si "espace"
if (down) then
pyth = math.sqrt((((xPP - px)^2) + ((yPP - py)^2)))
if pyth <= 25 then -- Si la position du joueur correspond à celle voulue
nbr = math.random(1,maxPts) -- On choisit un point aléatoirement
ajPts(nbr) -- On positionne le point
end
end
end
end

Actuellement il permet de positionner 1 seul point, j'aimerais bien qu'il soit possible de placer plusieurs points (à définir via une variable) avec les conditions suivantes :

- si le point 1 est en [px1 , py1], aucun autre point ne peut être positionner à cet emplacement
- un point en [px5 , py5] qui est "activé" par un joueur ne peut pas se retrouver à ce même emplacement ni à un emplacement déjà occupé par un autre point

Merci d'avance ^-^
Athesdrake
« Citoyen »
1487619180000
    • Athesdrake#0000
    • Profil
    • Derniers messages
    • Tribu
#1289
  0
Code modifié ^^
Code Lua

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
38
39
40
41
42
43
44
45
46
47
48
49
tfm.exec.disableAutoNewGame (true)
tfm.exec.disableAutoShaman (true)
tfm.exec.disableAfkDeath (true)
tfm.exec.disableWatchCommand (true)
tfm.exec.disableDebugCommand (true)
tfm.exec.disableMinimalistMode (true)
tfm.exec.newGame("@7011091")

-- Coordonnées de chaque point possible
points = {p1={x=240, y=315, actif=false}, p2={x=345, y=70, actif=false}, p3={x=765, y=70, actif=false}, p4={x=520, y=105, actif=false}, p5={x=275, y=70, actif=false}, p6={x=520, y=175, actif=false}, p7={x=625, y=210, actif=false}, p8={x=730, y=315, actif=false}, p9={x=345, y=210, actif=false}, p10={x=520, y=315, actif=false}}

-- Permet de choisir aléatoirement un point p[n].x p[n].y
function ajPts(nbr)
local p = points["p"..tostring(nbr)]
if nbr==1 and p.actif then
print("Le point 1 est activé !")
elseif p.actif then
print("Le point "..nbr.." est activé !")
elseif points.p1.actif then
print("Damn le point 1 est actif :X")
end
tfm.exec.addPhysicObject(1, p.x, p.y, {type=13, restitution=0.2, friction=0, width=12, height=12, color=0x000001, miceCollision=false})
tfm.exec.addPhysicObject(2, p.x, p.y, {type=13, restitution=0.2, friction=0, width=10, height=10, color=0x6A7495, miceCollision=false})
ui.addTextArea(12000+nbr, "<font color='#000001'><p align='center'><b>1</b></p></font>", pN, p.x-15, p.y-9, 30, 30, 0x000001, 0x000001, 0, false)
points["p"..tostring(nbr)].actif = true
end

-- Nombre de point possible
maxPts=10

-- Position du premier point
nbr = math.random(1,maxPts)
ajPts(nbr)

for pN in pairs(tfm.get.room.playerList) do
system.bindKeyboard (pN, 32, true, true)
end

function eventKeyboard (pN, tch, down, xPP, yPP)
if tch == 32 then -- Si "espace"
if (down) then
pyth = math.sqrt((((xPP - px)^2) + ((yPP - py)^2)))
if pyth <= 25 then -- Si la position du joueur correspond à celle voulue
nbr = math.random(1,maxPts) -- On choisit un point aléatoirement
ajPts(nbr) -- On positionne le point
end
end
end
end


Voilà, j'ai modifié ton code (un tout petit peu)
J'ai fais en sorte que ta table points soit mieux organisée. au lieu de px1 = 65, c'est p1 = {x = 65, y = 20, actif = false}
Comme ça, c'est un peu plus structuré, et donc on vois mieux le choses ^^
J'ai rajouté la variable "actif" pour chaque point, comme ça, tu pourras savoir si un point est activé ou pas ^^

Par contre, j'ai pas trop compris tes conditions, mais bon, avec la variable "actif", ça devrait pas être trop difficile pour toi nn ?
J'ai aussi fais des exemples de conditions, juste au cas où ^^

si tu as une autre question, n'hésite pas ^^
Mistigrounet
« Consul »
1487623680000
    • Mistigrounet#0000
    • Profil
    • Derniers messages
    • Tribu
#1290
  0
Jtmlucile a dit :
Code modifié ^^
Code Lua

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
38
39
40
41
42
43
44
45
46
47
48
49
tfm.exec.disableAutoNewGame (true)
tfm.exec.disableAutoShaman (true)
tfm.exec.disableAfkDeath (true)
tfm.exec.disableWatchCommand (true)
tfm.exec.disableDebugCommand (true)
tfm.exec.disableMinimalistMode (true)
tfm.exec.newGame("@7011091")

-- Coordonnées de chaque point possible
points = {p1={x=240, y=315, actif=false}, p2={x=345, y=70, actif=false}, p3={x=765, y=70, actif=false}, p4={x=520, y=105, actif=false}, p5={x=275, y=70, actif=false}, p6={x=520, y=175, actif=false}, p7={x=625, y=210, actif=false}, p8={x=730, y=315, actif=false}, p9={x=345, y=210, actif=false}, p10={x=520, y=315, actif=false}}

-- Permet de choisir aléatoirement un point p[n].x p[n].y
function ajPts(nbr)
local p = points["p"..tostring(nbr)]
if nbr==1 and p.actif then
print("Le point 1 est activé !")
elseif p.actif then
print("Le point "..nbr.." est activé !")
elseif points.p1.actif then
print("Damn le point 1 est actif :X")
end
tfm.exec.addPhysicObject(1, p.x, p.y, {type=13, restitution=0.2, friction=0, width=12, height=12, color=0x000001, miceCollision=false})
tfm.exec.addPhysicObject(2, p.x, p.y, {type=13, restitution=0.2, friction=0, width=10, height=10, color=0x6A7495, miceCollision=false})
ui.addTextArea(12000+nbr, "<font color='#000001'><p align='center'><b>1</b></p></font>", pN, p.x-15, p.y-9, 30, 30, 0x000001, 0x000001, 0, false)
points["p"..tostring(nbr)].actif = true
end

-- Nombre de point possible
maxPts=10

-- Position du premier point
nbr = math.random(1,maxPts)
ajPts(nbr)

for pN in pairs(tfm.get.room.playerList) do
system.bindKeyboard (pN, 32, true, true)
end

function eventKeyboard (pN, tch, down, xPP, yPP)
if tch == 32 then -- Si "espace"
if (down) then
pyth = math.sqrt((((xPP - px)^2) + ((yPP - py)^2)))
if pyth <= 25 then -- Si la position du joueur correspond à celle voulue
nbr = math.random(1,maxPts) -- On choisit un point aléatoirement
ajPts(nbr) -- On positionne le point
end
end
end
end


Voilà, j'ai modifié ton code (un tout petit peu)
J'ai fais en sorte que ta table points soit mieux organisée. au lieu de px1 = 65, c'est p1 = {x = 65, y = 20, actif = false}
Comme ça, c'est un peu plus structuré, et donc on vois mieux le choses ^^
J'ai rajouté la variable "actif" pour chaque point, comme ça, tu pourras savoir si un point est activé ou pas ^^

Par contre, j'ai pas trop compris tes conditions, mais bon, avec la variable "actif", ça devrait pas être trop difficile pour toi nn ?
J'ai aussi fais des exemples de conditions, juste au cas où ^^

si tu as une autre question, n'hésite pas ^^

C'est pas vraiment ça que je voulais x) *en plus il marche pas xD*

En faite, le code que j'ai mis permet d'obtenir 1 point sur la carte
Seulement, il faudrait qu'il y en ai plusieurs mais tous à des points différents les uns des autres

Du style :

Coordonnée possible : x1 y1 x2 y2 x3 y3 x4 y4 x5 y5

Le point A est en x2 y2
Donc le point B ne peut pas être en x2 y2 (car déjà pris par le point A) donc le point B en x1y1 / x3/y3 x4/y4 x5/y5
Idem pour le point C, pas en x2y2 ni au même endroit que le point B
etc :s
Cubeman74
« Censeur »
1487705880000
    • Cubeman74#7337
    • Profil
    • Derniers messages
#1291
  0
comment on fait pour que quand la souris touche une couleur, elle rétrécit?
Tortuegreen
« Censeur »
1487707380000
    • Tortuegreen#0000
    • Profil
    • Derniers messages
    • Tribu
#1292
  0
Cubeman30 a dit :
comment on fait pour que quand la souris touche une couleur, elle rétrécit?

On ne peut pas encore rétrécir une souris avec le Lua. :/
Cubeman74
« Censeur »
1487707560000
    • Cubeman74#7337
    • Profil
    • Derniers messages
#1293
  0
Tortuegreen a dit :
Cubeman30 a dit :
comment on fait pour que quand la souris touche une couleur, elle rétrécit?

On ne peut pas encore rétrécir une souris avec le Lua. :/

bon ba il faut que je trouve une autre idée :(
Yoshoups
« Censeur »
1488048300000
    • Yoshoups#0000
    • Profil
    • Derniers messages
    • Tribu
#1294
  0
Juste, comment on fais pour utiliser le Lua de Transformice depuis NotePad++ ? Et sans copier coller son code dans le /lua du jeu ?
Bobolemouton
« Censeur »
1488056100000
    • Bobolemouton#9848
    • Profil
    • Derniers messages
    • Tribu
#1295
  0
on peut pas
Yoshoups
« Censeur »
1488725160000
    • Yoshoups#0000
    • Profil
    • Derniers messages
    • Tribu
#1296
  0
Et on peut faire une sélection de tout les joueurs présent dans le salon sauf ne pas en sélectionner un ?
(le joueur pas sélectionner sera dans une variable qui s'appelle "joueur").
Athesdrake
« Citoyen »
1488733140000
    • Athesdrake#0000
    • Profil
    • Derniers messages
    • Tribu
#1297
  0
Yoshoups a dit :
Et on peut faire une sélection de tout les joueurs présent dans le salon sauf ne pas en sélectionner un ?
(le joueur pas sélectionner sera dans une variable qui s'appelle "joueur").

Oui bien sûr
1
2
3
4
5
for pl, data in pairs(tfm.get.room.playerList) do
if pl~=joueur then
--Code à executer
end
end
Mistigrounet
« Consul »
1488747720000
    • Mistigrounet#0000
    • Profil
    • Derniers messages
    • Tribu
#1298
  0
Quelqu'un aurait un petit code pour permettre de donner une valeur différente à chaque joueur

Du style, au final on aurait :

Joueur1 = 100
Joueur2 = 200
Joueur3 = 300...

Marci (jss sur c'est encore un truc tout simple ;[)

Dernière modification le 1488747780000
Nathaan
« Citoyen »
1488792900000
    • Nathaan#0000
    • Profil
    • Derniers messages
    • Tribu
#1299
  0
Je peux pas t'envoyer de code sur tel mais faut que tu fasses des tables
Yoshoups
« Censeur »
1488824340000
    • Yoshoups#0000
    • Profil
    • Derniers messages
    • Tribu
#1300
  0
Nathaan a dit :
Je peux pas t'envoyer de code sur tel mais faut que tu fasses des tables

Justement, j'ai le même problème, j'ai fais une table "joueur" et "argent", sauf que je sais pas comment chercher quelque chose et le modifier
  • Forums
  • /
  • Transformice
  • /
  • Modules
  • /
  • [Aide] Demandes de codes et d'explications
« ‹ 65 / 70 › »
© Atelier801 2018

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

Version 1.27