Worldedit
  Worldedit
Le site sur l'éditeur de warcraft 3 !
 
  FAQFAQ   RechercherRechercher   Liste des MembresListe des Membres    Groupes d'utilisateursGroupes d'utilisateurs   medals.php?sid=d5bc941332fcfb8c571cc5b217e0ae8cMédailles   S'enregistrerS'enregistrer 
 ProfilProfil   Se connecter pour vérifier ses messages privésSe connecter pour vérifier ses messages privés   ConnexionConnexion 
  FAQFAQ World Editor   UploadUploader une map ou une image    UploadAjouter sa map à l'annuaire   UploadConsulter l'annuaire

la fonction retourne un déploiement ?
Aller à la page Précédente  1, 2, 3, 4  Suivante
 
Poster un nouveau sujet   Ce sujet est verrouillé, vous ne pouvez pas éditer les messages ou faire de réponses.    Worldedit Index du Forum -> Aide sur les déclencheurs
Voir le sujet précédent :: Voir le sujet suivant  
Auteur Message
 zazaa
Membre actif


Inscrit le: 05 Aoû 2008
Messages: 197
Sujets: 24



MessagePosté le: 29/09/08 20:53    Sujet du message: Citer

ui sa donne pas grand chose^^

sa pourrai marcher une fonction array2string et inversement pour stocker des tableaux ? ou c'est vraiment pas la peine..
_________________
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé  
 Troll-Brain
Ri1kamoua


Inscrit le: 23 Aoû 2007
Messages: 7146
Sujets: 147
Spécialité en worldedit: le troll, le flood, la vulgarité, mon coeur balance
Médailles: 2 (En savoir plus...)
Grand mage créateur de sort (Quantité : 1) Rédacteur de tuto #3 (Quantité : 1)

MessagePosté le: 29/09/08 20:58    Sujet du message: Citer

Bah ca marchera c'est sûr.
Faut voir si tu en as l'utilité surtout.
_________________
Le violet, c'est moche.
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé  
 zazaa
Membre actif


Inscrit le: 05 Aoû 2008
Messages: 197
Sujets: 24



MessagePosté le: 29/09/08 21:37    Sujet du message: Citer

oui tkt je la fait moi meme c'est juste que avant je voulais savoir si sa
pouvait marcher
_________________
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé  
 Troll-Brain
Ri1kamoua


Inscrit le: 23 Aoû 2007
Messages: 7146
Sujets: 147
Spécialité en worldedit: le troll, le flood, la vulgarité, mon coeur balance
Médailles: 2 (En savoir plus...)
Grand mage créateur de sort (Quantité : 1) Rédacteur de tuto #3 (Quantité : 1)

MessagePosté le: 29/09/08 21:50    Sujet du message: Citer

Faut considérer que les index d'une variable array sont compris entre 0 et 8190 (inclus tous les 2 )
_________________
Le violet, c'est moche.
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé  
 Ayane
Bot administrateur


Inscrit le: 17 Sep 2007
Messages: 2012
Sujets: 49

Médailles: 2 (En savoir plus...)
Rédacteur de tuto #1 (Quantité : 1) Ayane (Quantité : 1)

MessagePosté le: 29/09/08 21:52    Sujet du message: Citer

Troll-Brain a écrit:
On ne peut tout simplement pas faire une variable array 2D.
Même en vJass c'est la bidouille qu'à décrit Profet.

Ce que tu appelles bidouille est utilisé dans tous les langages, les compilateurs générant un code équivalant à la bidouille.

On peut passer un tableau d'handle si on fait suivre les handles, c'est à dire les créer tous l'un après l'autre.
On peut aussi fractionner certaines fonctions afin qu'à chaque appel elles nous retournent le résultat suivant (en fournissant certains paramètres nécessaires, souvent utilisé dans les recherches avec un pointeur).
Si elle n'est pas censé être appelée plusieurs fois en même temps tu peux utiliser une variable globale.
Sinon tu peux intégrer le code de TirageSansRemise directement dans la fonction cible.
Tu as aussi le vJass ou le gamecache comme possibilités.


Troll-Brain a écrit:
C'est aussi simple que cela pour rendre jasshelper utilisable pour les mac ?
worldedit.exe est le même, etc ?
Ca m'étonne beaucoup que personne n'ait jamais release une version mac alors

Ce n'est pas si simple, il a codé avec Delphi (6 ou 7), hors il n'en existe qu'une version Windows et une Linux. Il faut donc trouver un autre compilateur peut être qu'il y en a compatible avec le même pascal, peut-être qu'ils peuvent même importer les fichiers projets, sinon il faut refaire les fichiers projets (pas très difficile), ou modifier certaines parties pour qu'elles soient compatibles avec le pascal du compilateur.
Néanmoins il n'y en a aucun qui a compilé pour Linux...
Mais cela peut s'expliquer car Grimoire ne peut pas être adapté comme beaucoup d'autres logiciels, les utilisateurs de Mac ou Linux utilisent donc généralement un émulateur Windows pour faire tourner les outils.
_________________
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé MSN Messenger 
 Troll-Brain
Ri1kamoua


Inscrit le: 23 Aoû 2007
Messages: 7146
Sujets: 147
Spécialité en worldedit: le troll, le flood, la vulgarité, mon coeur balance
Médailles: 2 (En savoir plus...)
Grand mage créateur de sort (Quantité : 1) Rédacteur de tuto #3 (Quantité : 1)

MessagePosté le: 30/09/08 16:19    Sujet du message: Citer

Ca reste de la bidouille dans le sens ou il faut créer une fonction soit même pour le réaliser.
Ca ne fait pas partie des fonctions de base du langage, ce qui n'est pas très performant, à plus forte raison pour un langage script, c'est ce que je voulais dire.

Par contre je pensais naïvement qu'il n'existait qu'un seul langage pascal.
J'ignorais que les compilateurs avaient leur propre "vocabulaire", ou alors je n'ai pas saisi ce que tu voulais dire ?
_________________
Le violet, c'est moche.
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé  
 profet
Instanton Gravitationnel Singulier


Inscrit le: 21 Aoû 2007
Messages: 1633
Sujets: 53
Spécialité en worldedit: Pain d'épice multitâche (terrain, scripts, textures, modèles...)
Médailles: 2 (En savoir plus...)
Profet (Quantité : 1) Rédacteur de tuto #3 (Quantité : 1)

MessagePosté le: 30/09/08 16:59    Sujet du message: Citer

Troll-Brain a écrit:
Ca ne fait pas partie des fonctions de base du langage, ce qui n'est pas très performant
Moins performant peut être, "pas très performant" c'est toi qui le dit Wink
_________________

Bêta Systems: 70%
Bêta Spells: 13%
Bêta Arts & graphics: 70%
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur  
 Troll-Brain
Ri1kamoua


Inscrit le: 23 Aoû 2007
Messages: 7146
Sujets: 147
Spécialité en worldedit: le troll, le flood, la vulgarité, mon coeur balance
Médailles: 2 (En savoir plus...)
Rédacteur de tuto #3 (Quantité : 1) Grand mage créateur de sort (Quantité : 1)

MessagePosté le: 30/09/08 17:09    Sujet du message: Citer

Tout est relatif, la différence ne dépasse pas, loin de là, la milli seconde c'est certain. (Je ne m'hasarderai pas à parler en nano secondes pour ne pas donner un chiffre fantaisiste, même si je sais que l'échelle est bien inférieure à 10^ -3 s)
Mais le facteur de multiplication de temps d'exécution doit bien d'être au moins de 10 , 100 ou plus.
_________________
Le violet, c'est moche.
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé  
 Ayane
Bot administrateur


Inscrit le: 17 Sep 2007
Messages: 2012
Sujets: 49

Médailles: 2 (En savoir plus...)
Ayane (Quantité : 1) Rédacteur de tuto #1 (Quantité : 1)

MessagePosté le: 30/09/08 17:34    Sujet du message: Citer

Une multiplication s'effectue en un cycle d'horloge, la lecture/écriture mémoire met plus de temps.
_________________
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé MSN Messenger 
 Troll-Brain
Ri1kamoua


Inscrit le: 23 Aoû 2007
Messages: 7146
Sujets: 147
Spécialité en worldedit: le troll, le flood, la vulgarité, mon coeur balance
Médailles: 2 (En savoir plus...)
Rédacteur de tuto #3 (Quantité : 1) Grand mage créateur de sort (Quantité : 1)

MessagePosté le: 30/09/08 17:40    Sujet du message: Citer

xD
Je me suis surement mal exprimé.

Il est vrai que je m'avance beaucoup tout en n'ayant finalement que très peu de savoir en programmation.

Je voulais parler de la différence d'exécution entre une fonction native et une fonction custom, capiche ?
_________________
Le violet, c'est moche.
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé  
 profet
Instanton Gravitationnel Singulier


Inscrit le: 21 Aoû 2007
Messages: 1633
Sujets: 53
Spécialité en worldedit: Pain d'épice multitâche (terrain, scripts, textures, modèles...)
Médailles: 2 (En savoir plus...)
Rédacteur de tuto #3 (Quantité : 1) Profet (Quantité : 1)

MessagePosté le: 30/09/08 17:51    Sujet du message: Citer

Oui on a compris, mais au final, ça dépend de l'utilisation que tu en fais, sauf dans le cas de periodiques extrêmement courts (et encore) un appel de fonction native ou pas, passera complètement inaperçu.
_________________

Bêta Systems: 70%
Bêta Spells: 13%
Bêta Arts & graphics: 70%
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur  
 Troll-Brain
Ri1kamoua


Inscrit le: 23 Aoû 2007
Messages: 7146
Sujets: 147
Spécialité en worldedit: le troll, le flood, la vulgarité, mon coeur balance
Médailles: 2 (En savoir plus...)
Grand mage créateur de sort (Quantité : 1) Rédacteur de tuto #3 (Quantité : 1)

MessagePosté le: 30/09/08 18:30    Sujet du message: Citer

Je sais bien je me répètes assez là dessus, je ne fais pas de la sur-optimisation, et je sais aussi qu'Ayane a un humour de geek.
_________________
Le violet, c'est moche.
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé  
 zazaa
Membre actif


Inscrit le: 05 Aoû 2008
Messages: 197
Sujets: 24



MessagePosté le: 30/09/08 19:32    Sujet du message: Citer

Re-bonsoir

j'ai un peu modifié la fonction de tiragesansremise pour récuperer une chaine par joueur, pour l'instant sa marche, par contre j'ai du mal pour récuperer les valeurs

j'ai fait ca :
Secret:

Jass:
function TirageSansRemise takes integer a, integer b, integer n, player p returns nothing

local integer temp = -1
local integer index
local integer max = (b-a) + 1

set udg_N = n


loop
    exitwhen a > b
    set temp = temp + 1
    set udg_Table[temp] = a
    set a = a + 1
endloop

loop
    exitwhen n == 0
    set n = n - 1
    set max = max - 1
    set index = GetRandomInt(0, max )
    set temp = udg_Table[index]
    set udg_Table[index] = udg_Table[max]
    set udg_Table[max] = temp
endloop



loop
    exitwhen n == udg_N
    set udg_S[GetConvertedPlayerId(p)] = (udg_S[GetConvertedPlayerId(p)] + " " + I2S( udg_Table[n] ) )

    set n = n + 1
endloop

endfunction



et pour convertir :
Secret:

Jass:
function String2Table takes string s returns nothing
local integer n = 0
local integer index = 0


loop
  exitwhen n == StringLength( s )
      if SubString(s, n, n + 1) != " " then
          set index = index + 1
          if SubString(s, n + 1, n + 2) != " " then
              set udg_Table[index] = ( S2I(SubString(s, n, n + 1)) * 10 ) + S2I(SubString(s, n + 1, n + 2))
              set n = n + 1
          else
              set udg_Table[index] = S2I(SubString(s, n, n + 1))
          endif
        else
          set n = n + 1
        endif

endloop

endfunction



mais bien sur ca marche pas Rolling Eyes

je pense que sa viens des substring, il me semble que c'est un intevalle fermé d'un coté, j'ai essayé plusieurs mais sa donne rien
alors je viens encore demander de l'aide^^
_________________
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé  
 Troll-Brain
Ri1kamoua


Inscrit le: 23 Aoû 2007
Messages: 7146
Sujets: 147
Spécialité en worldedit: le troll, le flood, la vulgarité, mon coeur balance
Médailles: 2 (En savoir plus...)
Rédacteur de tuto #3 (Quantité : 1) Grand mage créateur de sort (Quantité : 1)

MessagePosté le: 30/09/08 21:05    Sujet du message: Citer

Jass:
if SubString(s, n, n + 1) != " " then


D'après ce que j'ai lu d'un oeil rapide tu as compris comment utiliser SubString.

Par contre je vois un gros souci, le if que j'ai cité est faux à la première itération de la boucle, et comme toutes tes actions sont imbriquées dans ce if, ca te fait une joli boucle infinie, n ne changeant jamais de valeur.

PS : Juste pour info si tu ne le savais pas :

Jass:
function GetConvertedPlayerId takes player whichPlayer returns integer
    return GetPlayerId(whichPlayer) + 1
endfunction

_________________
Le violet, c'est moche.
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé  
 zazaa
Membre actif


Inscrit le: 05 Aoû 2008
Messages: 197
Sujets: 24



MessagePosté le: 01/10/08 18:58    Sujet du message: Citer

Ah c'etait ce n qui foirait tout !
oui en effet il bougait pas au 2eme else
j'ai corrigé maintenant sa marche
Secret:

Jass:
loop
  exitwhen n > StringLength( s )
      if SubString(s, n, n + 1) != " " then
          set index = index + 1
          if SubString(s, n + 1, n + 2) != " " then
              set udg_Table[index] = ( S2I(SubString(s, n, n + 1)) * 10 ) + S2I(SubString(s, n + 1, n + 2))
              set n = n + 2
          else
              set udg_Table[index] = S2I(SubString(s, n, n + 1))
              set n = n + 1
          endif
       else
          set n = n + 1
       endif
endloop



sa récupere pas la derniere valeur mais bon osef^^



Troll-Brain a écrit:

Jass:
function GetConvertedPlayerId takes player whichPlayer returns integer
    return GetPlayerId(whichPlayer) + 1
endfunction


non je savais pas j'ai recopié betement le gui

en tous cas merci pour ces précieux conseils

bye Smile
_________________
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé  
Montrer les messages depuis:   
Poster un nouveau sujet   Ce sujet est verrouillé, vous ne pouvez pas éditer les messages ou faire de réponses.    Worldedit Index du Forum -> Aide sur les déclencheurs Toutes les heures sont au format GMT + 1 Heure
Aller à la page Précédente  1, 2, 3, 4  Suivante
Page 3 sur 4
La question posée dans ce topic a été résolue !

 
Sauter vers:  
Vous ne pouvez pas poster de nouveaux sujets dans ce forum
Vous ne pouvez pas répondre aux sujets dans ce forum
Vous ne pouvez pas éditer vos messages dans ce forum
Vous ne pouvez pas supprimer vos messages dans ce forum
Vous ne pouvez pas voter dans les sondages de ce forum


Powered by phpBB © 2001, 2005 phpBB Group
Traduction par : phpBB-fr.com