Aller au contenu

Shyfe

Membre
  • Compteur de contenus

    21
  • Inscription

  • Dernière visite

  • Crédits

    0 [Faire un don]

Réputation sur la communauté

0 Neutre

À propos de Shyfe

  • Rang
    Intérresé

Visiteurs récents du profil

Le bloc de visiteurs récents est désactivé et il n’est pas visible pour les autres utilisateurs.

  1. J'ai poursuivi mes recherche sans succès, si quelqu'un à une idée, je suis preneur ...
  2. Mon objectif : Créer comme dans un mmorpg, un système de sorts avec des niveaux pour ces sorts, des équipements qui influent sur les dommages de ces sorts et des caractéristiques qui font elles aussi varier les dommages des sorts. J'y suis plus ou moins parvenu mais comme vous allez le voir je suis confronté à pas mal de contraintes. Mon problème : Le problème principal est la flexibilité et la taille de mon code, à terme, j'aurais environ 120 sorts avec chacun 5 niveaux, des dizaines d'équipements et des centaines de possibilités de caractéristiques (4 voies personnalisables) Hors, actuellement je suis obligé d'écrire une 50aine de ligne pour un niveau d'un sort avec un équipement et une tranche de caractéristique (si on multiplie par le nombre de sorts, d'équipements et de possibilités, je vous laisse imaginer les milliers de lignes, et ce n'est pas envisageable). Voici donc mon skript, j'ai essayé de l'expliquer un peu mais je peux détailler si besoin : on right click with 4704: if {dmgPression.%player's UUID%} = 0: set {dmgPression.%player's UUID%} to {dmgPression.%player's UUID%} + 2 if {cooldownIop1.%player%} isn't set: set {cooldownIop1.%player%} to now stop set {_waitedIop1} to difference between {cooldownIop1.%player%} and now if {_waitedIop1} is less than 4 seconds: send "&cTu dois encore attendre %difference between {_waitedIop1} and 4 seconds%" stop if distance between the target and player is smaller than 4: #PRESSION NIVEAU 2 if {pression.lvl2.%player's uuid%} is true: #Si Pression est niveau 2 set {dmgPression.%player's UUID%} to {dmg.%player's UUID%} + 2 if player is wearing helmet: #Si le joueur porte un casque set {dmgPression.%player's UUID%} to {dmgPression.%player's UUID%} + 2 if {force.%player's UUID%} is between 10 and 20: #Si la force est entre 10 et 20 set {dmgPression.%player's UUID%} to {dmgPression.%player's UUID%} + 1 if {Puissance.%player%} is true: #Si Puissance est lancé damage target by {dmg.%player's UUID%} + 1 hearts set {cooldownIop1.%player%} to now send "Dégâts infligés : &c%{dmg.%player's UUID%}%&c par &c%entity%&c à &c%target%&c" else: damage target by {dmg.%player's UUID%} hearts set {cooldownIop1.%player%} to now send "Dégâts infligés : &c%{dmg.%player's UUID%}%&c par &c%entity%&c à &c%target%&c" set {dmg.%player's UUID%} to {dmg.%player's UUID%} - 1 else: #Si la force du joueur n'est pas entre 10 et 20 if {Puissance.%player%} is true: #Si Puissance est lancé damage target by {dmg.%player's UUID%} + 1 hearts set {cooldownIop1.%player%} to now send "Dégâts infligés : &c%{dmg.%player's UUID%}%&c par &c%entity%&c à &c%target%&c" else: damage target by {dmg.%player's UUID%} hearts set {cooldownIop1.%player%} to now send "Dégâts infligés : &c%{dmg.%player's UUID%}%&c par &c%entity%&c à &c%target%&c" set {dmg.%player's UUID%} to {dmg.%player's UUID%} - 1 set {dmgPression.%player's UUID%} to {dmgPression.%player's UUID%} - 2 else: #Si le joueur ne porte pas de casque if {force.%player's UUID%} is between 10 and 20: #Si la force est entre 10 et 20 set {dmgPression.%player's UUID%} to {dmgPression.%player's UUID%} + 1 if {Puissance.%player%} is true: #Si puissance est lancé damage target by {dmg.%player's UUID%} + 1 hearts set {cooldownIop1.%player%} to now send "Dégâts infligés : &c%{dmg.%player's UUID%}%&c par &c%entity%&c à &c%target%&c" else: damage target by {dmg.%player's UUID%} hearts set {cooldownIop1.%player%} to now send "Dégâts infligés : &c%{dmg.%player's UUID%}%&c par &c%entity%&c à &c%target%&c" set {dmgPression.%player's UUID%} to {dmgPression.%player's UUID%} - 1 else: #Si la force du joueur n'est pas entre 10 et 20 if {Puissance.%player%} is true: #Si puissance est lancé damage target by {dmg.%player's UUID%} + 1 hearts set {cooldownIop1.%player%} to now send "Dégâts infligés : &c%{dmg.%player's UUID%}%&c par &c%entity%&c à &c%target%&c" else: damage target by {dmg.%player's UUID%} hearts set {cooldownIop1.%player%} to now send "Dégâts infligés : &c%{dmg.%player's UUID%}%&c par &c%entity%&c à &c%target%&c" Je précise que le skript que je viens de vous envoyer (à partir de "PRESSION NIVEAU 2") doit être répété encore 4 fois et que ceci n'est que pour un sort, donc comme vous le voyez c'est trop long et encore, la il n'y a qu'un équipement et qu'une tranche de caractéristique comme je l'ai dit; Ce que je vous demande c'est donc de m'aider à simplifier tout ça.
  3. Bonjour, j'ai créé un système de sort avec des niveaux dont les dégâts varient selon ces niveaux. Je voudrais pouvoir ajouter plusieurs facteurs pouvant changer ces variations de dégâts. J'ai donc une variable qui vaut le montant des dommages, ici "{dmg}" qui s'adapte selon le niveau du sort. Seulement je voudrais pouvoir faire en sorte que si le joueur est équipé d'un casque ou tout autre chose, cette valeur soit de nouveau augmentée à partir de la valeur précédente. Exemple : Sort X, Niveau du sort : 2, Dégâts de ce sort : 3. Je voudrais que si le joueur est équipé d'un casque X, le montant des dégâts passe à 4 et qu'évidemment, lorsqu'il le retire, ce montant redevienne l'ancien, ici 3. Voici mon script : on right click with IDSort: if {dmg.%player's UUID%} = 0: set {dmg.%player's UUID%} to {dmg.%player's UUID%} + 2 if {cooldown1.%player%} isn't set: set {cooldown1.%player%} to now stop set {_waited1} to difference between {cooldown1.%player%} and now if {_waited1} is less than 4 seconds: send "&cTu dois encore attendre %difference between {_waited1} and 4 seconds%" stop if distance between the target and player is smaller than 4: if {niveau.lvl2.%player's uuid%} is true: set {dmg.%player's UUID%} to {dmg.%player's UUID%} + 2 damage target by {dmg.%player's UUID%} hearts set {cooldown1.%player%} to now send "Dégâts infligés : &c%{dmg.%player's UUID%}%&c par &c%entity%&c à &c%target%&c" set {dmg.%player's UUID%} to {dmg.%player's UUID%} - 2 else: damage target by {dmg.%player's UUID%} hearts set {cooldown1.%player%} to now send "Dégâts infligés : &c%{dmg.%player's UUID%}%&c par &c%entity%&c à &c%target%&c" Le truc qui complique encore un peu plus le code, c'est que cette variable, je veux pouvoir m'en servir pour tous mes sorts. Je sais pas si j'ai réussi à bien expliquer donc si vous avez besoin d'infos supplémentaires, n'hésitez pas. EDIT : J'avais essayé avec ceci mais même si ça fonctionne, c'est pas pratique car je dois ajouter (à partir du if) ce morceau à tous mes niveaux de tous mes sorts, et faudra que je multiplie ça par le nombre d'équipement donc impossible de faire comme ça. on right click with IDSort: if player is wearing helmet or chestplate or leggings or boots: set {dmg.%player's UUID%} to {dmg.%player's UUID%} + 2 send "Stuff opérationnel" wait 1 second set {dmg.%player's UUID%} to {dmg.%player's UUID%} - 2 Puis c'est pas très pratique de devoir le faire pour chaque sort (j'en ai environ 70) J'ai essayé d'arranger le truc avec un increase, seulement le soucis c'est que l'évènement fait que dès que je lance le sort et que je suis équipé d'un équipement, les dommages sont augmentés de X, hors moi je veux que cela ne fonctionne qu'une fois. Je ne vois pas quel évènement utiliser dans mon cas.
  4. Shyfe

    IA Mob Moddé

    J'ai avancé un peu dans mes recherches et le truc c'est que les sorts que j'ai créé ne sont pas considérés dans les évènements "on damage", si je met : on damage: if victim's name is "MonMob": broadcast "Yop" J'ai un "Yop" quand je fais un clique gauche sur le mob mais pas quand il reçoit des dégâts par mes sorts lancés grâce au clic droit ..
  5. Shyfe

    IA Mob Moddé

    Quelqu'un peut-être ?
  6. Shyfe

    IA Mob Moddé

    Bonjour, j'ai un soucis avec mes mobs moddés, je voudrais qu'ils ne m'attaquent que si je les attaque, j'avais pensé à ça : on entity target: if entity's health is 10: if entity's name is "NomMob": cancel event else: if entity's name is "NomMob": target attacker Sans succès, avez vous une idée ? L'objectif est de faire que mob mob ne m'attaque que si je l'attaque
  7. Pas mauvais ton serveur ! J'AIIIME !
  8. Shyfe

    Appeler un mob d'un mod

    Aurais-tu des indications à ce sujet ?
  9. Shyfe

    Appeler un mob d'un mod

    .. Si je post ici c'est que ca ne fonctionne pas, j'aurais du préciser mes tentatives. J'ai essayé d'utiliser le nom du mob donné dans le logiciel MCreator donc mcreatorNomMon.NomMob, l'id de l'oeuf, le label que je lui ai donné et c'est tout je crois. Je pense que le problème est que Skript ne connait pas le mob mais ce qui est étrange c'est que je peux faire "on right click with ID de l'item d'un mod" ca fonctionne. Un mob peut-il avoir un ID comme un item ? J'veux dire pas celui de l'oeuf mais l'id lui meme.
  10. Shyfe

    Appeler un mob d'un mod

    Bonjour, j'ai un soucis qui bloque beaucoup mon avancée et mal grès de nombreuses recherches, rien. Le soucis : j'ai créé un mob qu'on va appeler NomMob grâce à MCreator. J'ai donné un label à ce mob qui permet d'utiliser la commande /summon NomMob L'oeuf de ce mob possède un ID qu'on peut appeler 256. Je voudrais pouvoir faire interagir Skript avec ce mob, comme on peut le faire avec les mobs Vanillas par exemple : if distance between player and zombie is less than 10 blocks: create a safe explosion at player Ce genre de chose mais au lieu du zombie, mettre mon mob. Mon minecraft et mon forge sont en 1.7.10
  11. Shyfe

    Délié des scripts ?

    Moi non plus ^^ trois jours que je galère Du coup j'ai toujours besoin d'aide, merci d'avance J'ai trouvé un post qui pourrait aider mais que je n'arrive pas à adapter : [Contenu masqué] Problème résolu grâce à ce post. Si quelqu'un a besoin d'explication je pourrais en donner
  12. Shyfe

    Délié des scripts ?

    Je spam actuellement x)
  13. Shyfe

    Délié des scripts ?

    Le voila : [Contenu masqué]
×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer.