MFF

    Minecraft Forge France
    • Récent
    • Mots-clés
    • Populaire
    • Utilisateurs
    • Groupes
    • Forge Events
      • Automatique
      • Foncé
      • Clair
    • S'inscrire
    • Se connecter

    Un niveau d'energie qui réagit comme la faim

    Planifier Épinglé Verrouillé Déplacé Sans suite
    1.7.x
    71 Messages 9 Publieurs 19.2k Vues 1 Watching
    Charger plus de messages
    • Du plus ancien au plus récent
    • Du plus récent au plus ancien
    • Les plus votés
    Répondre
    • Répondre à l'aide d'un nouveau sujet
    Se connecter pour répondre
    Ce sujet a été supprimé. Seuls les utilisateurs avec les droits d'administration peuvent le voir.
    • BlackDrag00nB Hors-ligne
      BlackDrag00n
      dernière édition par

      Bonsoir a vous tous,

      #Explication !(Explication !)
      Je souhaite m’entrainer a la programmation de modding, pour cela je vais essayer d’intégrer dans minecraft par le biais de mon mod une barre d’énergie qui diminuera de la même manière que la faim mais la seul façon de la restaurer serait de dormir ou bien boire un “café” par exemple…

      Je programme pas mal en C et PHP, j’ai commencer un peu la programmation de mod minecraft > ICI < et > LA <.
      J’ai lu les tutos du forum, ainsi que les cours sur Open Class Rooms (anciennement Site Du Zero).

      #Un support approuvé ?(Un support approuvé ?)
      Comme je le disait dans une réponse de sujet, j’ai besoin d’entrainement et comme disait “Superloup10” > ICI <
      @Superloup10:

      si tu te lances dans un gros projet comme celui-ci, tu apprendras bien plus qu’en faisant un petit mod très basique.

      Donc je me lance dans ce projet, dont je ferais surement un tuto par la suite dans le cas ou d’autre personne voudrais comprendre ce mécanisme, pour crée d’autre mod utilisant ce principe.

      Mais, étant débutant dans le modding minecraft, j’ai beaucoup de lacune sur les mécanisme, méthode et event qui sont lié à minecraft.

      C’est pour cela que je me permet de poster mon sujet dans support pour les moddeurs plutôt que dans les “Mods en développement”, pour avoir un support et donc apprendre au fur et a mesure de l’avancement de mon mod.
      ps : si ce sujet et selon vous, modérateur et administrateur, pas au bon endroit, alors n’hésitez pas a le déplacer dans ce dernier !

      #Un Github, pour l’aide, l’avancement et éventuellement un futur tuto.(Un Github, pour l’aide, l’avancement et éventuellement un futur tuto.)
      Pour des questions pratique, je pense mettre tous mon mod dans un Github; ce qui je pense sera plus pratique pour trouver une erreur ou m’apporter une suggestion, pour ce qui m’aideront.
      ps : je rajouterais le lien Github, mais faut d’abord que je regarde comme ça fonctionne, pour des synchronisations de projets etc …

      Lien du projet Github : https://github.com/BlackDrag00n/EnergieMod
      Le répertoire codage : https://github.com/BlackDrag00n/EnergieMod/tree/master/src/main/java/fr/paramystick/pykenergie
      Le repertoire ressource : https://github.com/BlackDrag00n/EnergieMod/tree/master/src/main/resources

      #Information complémentaire.(Information complémentaire.)
      Je vais m’arranger à toujours être disponible sur le Teamspeak Minecraft Forge France (dans un des canaux de développement) quand je suis en train de travailler sur ce mod, de manière à ce que les personnes qui m’aide puisse me parler directement en cas de petite question qui n’ont pas besoin d’être sur le forum, j’insisterai par contre sur le fait que si il doit y avoir des échange de code ou de correction ou autre chose lié aux codages, il se fera par le forum !

      1 réponse Dernière réponse Répondre Citer 0
      • Superloup10S Hors-ligne
        Superloup10 Modérateurs
        dernière édition par

        Tu as un tuto qui explique le fonctionnement de github sur le forum.

        Si vous souhaitez me faire un don, il vous suffit de cliquer sur le bouton situé en dessous.

        Je suis un membre apprécié et joueur, j'ai déjà obtenu 17 points de réputation.

        1 réponse Dernière réponse Répondre Citer 0
        • BlackDrag00nB Hors-ligne
          BlackDrag00n
          dernière édition par

          J’ai regarder mais trop en ligne de commande il y a maintenant une application graphique qui permet les commit et push du projet, voir un tuto sympa en vidéo : Tutoriel vidéo Internet : Utiliser GitHub

          Par contre il explique pas comment on peut travailler à plusieurs sur un projet Github je suis en train de chercher un tuto sur ça.
          [A] fait une modification qu’on va appeler [1]
          ** fait une autre modification qu’on va appeler [2]

          Je ne sais pas du tous comment faire pour que :
          [A] récupère la modification [2] fait pas **
          ** récupère la modification [1] fait pas [A]

          En gros que les personnes se synchronise entre grâce au serveur Github et qu’il continue a travailler sur un projet identique sur le projet local de chaque personnes.

          1 réponse Dernière réponse Répondre Citer 0
          • Superloup10S Hors-ligne
            Superloup10 Modérateurs
            dernière édition par

            C’est expliqué dans le tutoriel du forum.

            Si vous souhaitez me faire un don, il vous suffit de cliquer sur le bouton situé en dessous.

            Je suis un membre apprécié et joueur, j'ai déjà obtenu 17 points de réputation.

            1 réponse Dernière réponse Répondre Citer 0
            • BlackDrag00nB Hors-ligne
              BlackDrag00n
              dernière édition par

              Dans le tuto il explique comment a partir de ligne de commande fusionner les modifications,

              En gros, si on reprend l’exemple :
              [A] envoie c’est modification [1]
              ** envoie c’est modification [2] mais ce rend compte que [A] a déjà fait des modification > donc fusion

              Mais du coup :
              ** aura les mofication [1] fait par [A] quand il va faire cette fusion ?
              et [A] va être prévenu de modification fait par ** pour qu’il est un projet local a jour ?

              1 réponse Dernière réponse Répondre Citer 0
              • Superloup10S Hors-ligne
                Superloup10 Modérateurs
                dernière édition par

                Sur l’interface graphique, tu as le bouton Sync avec à côté une flèche montante (quand tu as un commit à upload) et une flèche descendante (quand tu as un commit à download), s’il n’y a pas de différence, tu n’auras aucune flèche.

                Si vous souhaitez me faire un don, il vous suffit de cliquer sur le bouton situé en dessous.

                Je suis un membre apprécié et joueur, j'ai déjà obtenu 17 points de réputation.

                1 réponse Dernière réponse Répondre Citer 0
                • BlackDrag00nB Hors-ligne
                  BlackDrag00n
                  dernière édition par

                  okiiii, cool merci pour l’information !

                  Sa pourrait être bien de remonter cette information dans le tuto ^^

                  Je vais commencer un projets vierge grâce aux tuto du forum, je l’upload sur le Github, rajoute le lien au début du sujet et c’est partit je pense faire tous ça demain en fin de journée.

                  1 réponse Dernière réponse Répondre Citer 0
                  • Superloup10S Hors-ligne
                    Superloup10 Modérateurs
                    dernière édition par

                    Lorsque tu travailles en équipe, tu as 2 choix:
                    -soit tu créais une organisation et tu y ajoutes les membres de ton choix.
                    -soit tu ajoutes aux collaborators de ton projet les membres de ton choix.
                    Sinon, tu choisis de ne pas travailler en équipe et dans ce cas là, les autres feront des pulls request.

                    Si vous souhaitez me faire un don, il vous suffit de cliquer sur le bouton situé en dessous.

                    Je suis un membre apprécié et joueur, j'ai déjà obtenu 17 points de réputation.

                    1 réponse Dernière réponse Répondre Citer 0
                    • BlackDrag00nB Hors-ligne
                      BlackDrag00n
                      dernière édition par

                      Et d’après ton expérience qu’elle est la meilleur façon de travailler en équipe ?

                      Je demande ça, car j’ai une personne qui serai intéresser aussi à ce lancer dans le modding minecraft, et comme on a presque le même niveau de programmation, on se mettrai tous les deux sur le projet en vous demandant assistance 😛 quand on en aura besoin 🙂

                      1 réponse Dernière réponse Répondre Citer 0
                      • Superloup10S Hors-ligne
                        Superloup10 Modérateurs
                        dernière édition par

                        Le problème de l’organisation est que n’importe quel membre owner peux supprimer ou se réapproprier un projet sur son Github personnel. Le mieux reste d’ajouter des collaborateurs.

                        Si vous souhaitez me faire un don, il vous suffit de cliquer sur le bouton situé en dessous.

                        Je suis un membre apprécié et joueur, j'ai déjà obtenu 17 points de réputation.

                        1 réponse Dernière réponse Répondre Citer 0
                        • BlackDrag00nB Hors-ligne
                          BlackDrag00n
                          dernière édition par

                          Merci pour toutes ces informations Superloup10

                          1 réponse Dernière réponse Répondre Citer 0
                          • BlackDrag00nB Hors-ligne
                            BlackDrag00n
                            dernière édition par

                            Voilà j’ai crée la base de mon mod et rajouter le projet Github vous pouvez toujours jeter un œil sur mon organisation des classes et me faire un retour je vais commencer a réfléchir sur mon codage 😛


                            Je viens de faire le nécessaire crée un repository, ajout mon ami sur les collaborateurs du repository mais on trouve pas comment faire pour qu’il récupéré “mon” repository sur ''son" pc pour qu’il puisse faire des modifications pour par la suite pouvoir synchroniser sur “mon” repository, puis-je avoir une assistance 😛

                            1 réponse Dernière réponse Répondre Citer 0
                            • robin4002R Hors-ligne
                              robin4002 Moddeurs confirmés Rédacteurs Administrateurs
                              dernière édition par

                              Si il a l’application github sur son pc, il devrait voir le repo, suffit juste de cloner.
                              Sinon si il a le logiciel git, en ligne de commande : git clone url du repo.git
                              exemple : git clone git@github.com:FFMT/nanotech_mod.git

                              1 réponse Dernière réponse Répondre Citer 0
                              • BlackDrag00nB Hors-ligne
                                BlackDrag00n
                                dernière édition par

                                en faite je l’est rajouté, comme conseiller, dans les collabo, et on a trouver dans clone il voit la repo du coup par contre j’ai du mal a comprendre le principe des conflits

                                1 réponse Dernière réponse Répondre Citer 0
                                • robin4002R Hors-ligne
                                  robin4002 Moddeurs confirmés Rédacteurs Administrateurs
                                  dernière édition par

                                  Les conflits c’est un truc bien chiant a gérer, au début je re-clonais le repo quand j’avais ça x)
                                  Déjà il faut savoir que les conflits ne peuvent que être réglé en ligne de commande.
                                  Il faut d’abord commiter ce que tu as en local. Ensuite il faut fusionner les sources distantes avec les sources locaux :
                                  git pull origin master
                                  Il va tout fusionner et marquer clairement ou son les conflits.
                                  Il faut modifier le code pour qu’il soit ensuite comme tu le souhaite.
                                  Après il faut denouveau commité.
                                  Si tu ne veux pas avoir deux commit dans la liste, il faut rebaser (http://git-scm.com/book/fr/Les-branches-avec-Git-Rebaser)
                                  Et ensuite il faut push (git push origin master)

                                  1 réponse Dernière réponse Répondre Citer 0
                                  • BlackDrag00nB Hors-ligne
                                    BlackDrag00n
                                    dernière édition par

                                    mais cette choses a l’air d’être faisable avec la nouvelle interface 2.0 de GitHub


                                    @‘robin4002’:

                                    C’est ce que je disais, il faut passer par les ticks 😉
                                    Presque tout même devrait passer par les ticks, car il n’y a pas d’event pour quand le joueur sprint, il me semble que c’est une condition dans l’entity, donc le code ressemblera plutôt à :

                                    @SubscribeEvent
                                    public void onPlayerTick(TickEvent.Player event)
                                    {
                                    CustomProp prop = CustomProp.get(event.player);
                                    if(event.player.isSprinting)
                                    {
                                    prop.setThirst(prop.getThirst - 5);
                                    }
                                    else
                                    {
                                    prop.setThirst(prop.getThirst - 1);
                                    }
                                    }
                                    

                                    Enfin il faudra plutôt un timer, sinon ça va descendre beaucoup trop vite ^^

                                    Je met ce post ici pour le retrouver plus facilement 😛

                                    1 réponse Dernière réponse Répondre Citer 0
                                    • BlackDrag00nB Hors-ligne
                                      BlackDrag00n
                                      dernière édition par

                                      Salut tous le monde !!

                                      Me revoiloù avec une question a 0€ lol

                                      j’ai fait des recherches par rapport a un calcul dans minecraft qui est le suivant :

                                      int energieBar = MathHelper.ceiling_float_int((50/100)*64); // Chiffre fixe pour test
                                      

                                      Hors la valeur "d’energieBar " est toujours égale à : 0
                                      Par contre si je remplace les “/” et “*” par des “-” et “+”, la sa fonctionne.

                                      int energieBar = MathHelper.ceiling_float_int((50-100)+64); // Chiffre fixe pour test
                                      

                                      Ma question est dans ma situation si je veux diviser et multiplier il faut bien utiliser “/” et “*” non ?
                                      ps : j’utilise “MathHelper.ceiling_float_int” pour un calcul arrondi et converti de type float en int

                                      1 réponse Dernière réponse Répondre Citer 0
                                      • jglrxavpokJ Hors-ligne
                                        jglrxavpok Modérateurs
                                        dernière édition par

                                        int energieBar = MathHelper.ceiling_float_int((50f/100f)*64f); // Chiffre fixe pour test
                                        

                                        Il faut faire la conversion int<->float, sinon tu auras 50/100 avec des nombres entiers, soit 0 (0.5 tronqué aux unités)

                                        Modérateur sur MFF. 
                                        Mon Github: http://github.com/jglrxavpok
                                        Mon compte Steam si vous voulez jouer à CS:GO ou TF2 avec moi: https://steamcommunity.com/id/jglrxavpok/

                                        1 réponse Dernière réponse Répondre Citer 0
                                        • GuguG Hors-ligne
                                          Gugu
                                          dernière édition par

                                          Ou sinon, mieux vaux utiliser un float pour ton énergie. Comme ça, tu peux faire en sorte d’enlever très peu par tick, et avoir une descente constante.

                                          "If you have a comprehensive explanation for everything then it decreases uncertainty and anxiety and reduces your cognitive load. And if you can use that simplifying algorithm to put yourself on the side of moral virtue then you’re constantly a good person with a minimum of effort."
                                          ― Jordan B. Peterson

                                          1 réponse Dernière réponse Répondre Citer 0
                                          • BlackDrag00nB Hors-ligne
                                            BlackDrag00n
                                            dernière édition par

                                            D’accord merci les loulou, je ne savait pas qu’il fallait rajouter un “f” sur chaque valeur et dans le cas de variable que j’ignitialise pour mes test au début du codage si je met ça :

                                            float bar = 50f;
                                            float barMax = 100f;
                                            
                                            

                                            sa fonctionnera ?

                                            et tu as raison Gugu je pense que je vais faire mes calculs en float pour faire en sorte qu’il soit possible de descendre lentement la bar, mais avec le float il est possible que j’ai dès valeurs du type 0,66666666666, faut donc que je limite par exemple à 2 chiffres derrière la virgule.

                                            Il y a une fonction toute prête qui permet de faire ça depuis la 1.7, ou bien je doit m’en crée une qui me permettra d’arrondir les chiffres que je lui envoie du type :

                                            arrondi (float valeur, int nombre_apres_virgule)
                                            
                                            1 réponse Dernière réponse Répondre Citer 0
                                            • 1
                                            • 2
                                            • 3
                                            • 4
                                            • 3 / 4
                                            • Premier message
                                              Dernier message
                                            Design by Woryk
                                            ContactMentions Légales

                                            MINECRAFT FORGE FRANCE © 2024

                                            Powered by NodeBB