MFF

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

    Petit problème de GUI et quelques question

    Planifier Épinglé Verrouillé Déplacé Sans suite
    1.7.10
    49 Messages 8 Publieurs 8.5k 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.
    • YeyvoY Hors-ligne
      Yeyvo
      dernière édition par

      GuiTextField n’est pas une Class que j’ai créer c’est une classe de minecraft

      GuiTextField

      package net.minecraft.client.gui;
      
      import cpw.mods.fml.relauncher.Side;
      import cpw.mods.fml.relauncher.SideOnly;
      import net.minecraft.client.renderer.Tessellator;
      import net.minecraft.util.ChatAllowedCharacters;
      import org.lwjgl.opengl.GL11;
      
      @SideOnly(Side.CLIENT)
      public class GuiTextField extends Gui
      {
          private final FontRenderer field_146211_a;
          public int xPosition;
          public int yPosition;
          /** The width of this text field. */
          public int width;
          public int height;
          /** Has the current text being edited on the textbox. */
          private String text = "";
          private int maxStringLength = 32;
          private int cursorCounter;
          private boolean enableBackgroundDrawing = true;
          /** if true the textbox can lose focus by clicking elsewhere on the screen */
          private boolean canLoseFocus = true;
          /** If this value is true along with isEnabled, keyTyped will process the keys. */
          private boolean isFocused;
          /** If this value is true along with isFocused, keyTyped will process the keys. */
          private boolean isEnabled = true;
          /** The current character index that should be used as start of the rendered text. */
          private int lineScrollOffset;
          private int cursorPosition;
          /** other selection position, maybe the same as the cursor */
          private int selectionEnd;
          private int enabledColor = 14737632;
          private int disabledColor = 7368816;
          /** True if this textbox is visible */
          private boolean visible = true;
          private static final String __OBFID = "CL_00000670";
      
          public GuiTextField(FontRenderer p_i1032_1_, int p_i1032_2_, int p_i1032_3_, int p_i1032_4_, int p_i1032_5_)
          {
              this.field_146211_a = p_i1032_1_;
              this.xPosition = p_i1032_2_;
              this.yPosition = p_i1032_3_;
              this.width = p_i1032_4_;
              this.height = p_i1032_5_;
          }
      
          /**
           * Increments the cursor counter
           */
          public void updateCursorCounter()
          {
              ++this.cursorCounter;
          }
      
          /**
           * Sets the text of the textbox
           */
          public void setText(String p_146180_1_)
          {
              if (p_146180_1_.length() > this.maxStringLength)
              {
                  this.text = p_146180_1_.substring(0, this.maxStringLength);
              }
              else
              {
                  this.text = p_146180_1_;
              }
      
              this.setCursorPositionEnd();
          }
      
          /**
           * Returns the contents of the textbox
           */
          public String getText()
          {
              return this.text;
          }
      
          /**
           * returns the text between the cursor and selectionEnd
           */
          public String getSelectedText()
          {
              int i = this.cursorPosition < this.selectionEnd ? this.cursorPosition : this.selectionEnd;
              int j = this.cursorPosition < this.selectionEnd ? this.selectionEnd : this.cursorPosition;
              return this.text.substring(i, j);
          }
      
          /**
           * replaces selected text, or inserts text at the position on the cursor
           */
          public void writeText(String p_146191_1_)
          {
              String s1 = "";
              String s2 = ChatAllowedCharacters.filerAllowedCharacters(p_146191_1_);
              int i = this.cursorPosition < this.selectionEnd ? this.cursorPosition : this.selectionEnd;
              int j = this.cursorPosition < this.selectionEnd ? this.selectionEnd : this.cursorPosition;
              int k = this.maxStringLength - this.text.length() - (i - this.selectionEnd);
              boolean flag = false;
      
              if (this.text.length() > 0)
              {
                  s1 = s1 + this.text.substring(0, i);
              }
      
              int l;
      
              if (k < s2.length())
              {
                  s1 = s1 + s2.substring(0, k);
                  l = k;
              }
              else
              {
                  s1 = s1 + s2;
                  l = s2.length();
              }
      
              if (this.text.length() > 0 && j < this.text.length())
              {
                  s1 = s1 + this.text.substring(j);
              }
      
              this.text = s1;
              this.moveCursorBy(i - this.selectionEnd + l);
          }
      
          /**
           * Deletes the specified number of words starting at the cursor position. Negative numbers will delete words left of
           * the cursor.
           */
          public void deleteWords(int p_146177_1_)
          {
              if (this.text.length() != 0)
              {
                  if (this.selectionEnd != this.cursorPosition)
                  {
                      this.writeText("");
                  }
                  else
                  {
                      this.deleteFromCursor(this.getNthWordFromCursor(p_146177_1_) - this.cursorPosition);
                  }
              }
          }
      
          /**
           * delete the selected text, otherwsie deletes characters from either side of the cursor. params: delete num
           */
          public void deleteFromCursor(int p_146175_1_)
          {
              if (this.text.length() != 0)
              {
                  if (this.selectionEnd != this.cursorPosition)
                  {
                      this.writeText("");
                  }
                  else
                  {
                      boolean flag = p_146175_1_ < 0;
                      int j = flag ? this.cursorPosition + p_146175_1_ : this.cursorPosition;
                      int k = flag ? this.cursorPosition : this.cursorPosition + p_146175_1_;
                      String s = "";
      
                      if (j >= 0)
                      {
                          s = this.text.substring(0, j);
                      }
      
                      if (k < this.text.length())
                      {
                          s = s + this.text.substring(k);
                      }
      
                      this.text = s;
      
                      if (flag)
                      {
                          this.moveCursorBy(p_146175_1_);
                      }
                  }
              }
          }
      
          /**
           * see @getNthNextWordFromPos() params: N, position
           */
          public int getNthWordFromCursor(int p_146187_1_)
          {
              return this.getNthWordFromPos(p_146187_1_, this.getCursorPosition());
          }
      
          /**
           * gets the position of the nth word. N may be negative, then it looks backwards. params: N, position
           */
          public int getNthWordFromPos(int p_146183_1_, int p_146183_2_)
          {
              return this.func_146197_a(p_146183_1_, this.getCursorPosition(), true);
          }
      
          public int func_146197_a(int p_146197_1_, int p_146197_2_, boolean p_146197_3_)
          {
              int k = p_146197_2_;
              boolean flag1 = p_146197_1_ < 0;
              int l = Math.abs(p_146197_1_);
      
              for (int i1 = 0; i1 < l; ++i1)
              {
                  if (flag1)
                  {
                      while (p_146197_3_ && k > 0 && this.text.charAt(k - 1) == 32)
                      {
                          –k;
                      }
      
                      while (k > 0 && this.text.charAt(k - 1) != 32)
                      {
                          --k;
                      }
                  }
                  else
                  {
                      int j1 = this.text.length();
                      k = this.text.indexOf(32, k);
      
                      if (k == -1)
                      {
                          k = j1;
                      }
                      else
                      {
                          while (p_146197_3_ && k < j1 && this.text.charAt(k) == 32)
                          {
                              ++k;
                          }
                      }
                  }
              }
      
              return k;
          }
      
          /**
           * Moves the text cursor by a specified number of characters and clears the selection
           */
          public void moveCursorBy(int p_146182_1_)
          {
              this.setCursorPosition(this.selectionEnd + p_146182_1_);
          }
      
          /**
           * sets the position of the cursor to the provided index
           */
          public void setCursorPosition(int p_146190_1_)
          {
              this.cursorPosition = p_146190_1_;
              int j = this.text.length();
      
              if (this.cursorPosition < 0)
              {
                  this.cursorPosition = 0;
              }
      
              if (this.cursorPosition > j)
              {
                  this.cursorPosition = j;
              }
      
              this.setSelectionPos(this.cursorPosition);
          }
      
          /**
           * sets the cursors position to the beginning
           */
          public void setCursorPositionZero()
          {
              this.setCursorPosition(0);
          }
      
          /**
           * sets the cursors position to after the text
           */
          public void setCursorPositionEnd()
          {
              this.setCursorPosition(this.text.length());
          }
      
          /**
           * Call this method from your GuiScreen to process the keys into the textbox
           */
          public boolean textboxKeyTyped(char p_146201_1_, int p_146201_2_)
          {
              if (!this.isFocused)
              {
                  return false;
              }
              else
              {
                  switch (p_146201_1_)
                  {
                      case 1:
                          this.setCursorPositionEnd();
                          this.setSelectionPos(0);
                          return true;
                      case 3:
                          GuiScreen.setClipboardString(this.getSelectedText());
                          return true;
                      case 22:
                          if (this.isEnabled)
                          {
                              this.writeText(GuiScreen.getClipboardString());
                          }
      
                          return true;
                      case 24:
                          GuiScreen.setClipboardString(this.getSelectedText());
      
                          if (this.isEnabled)
                          {
                              this.writeText("");
                          }
      
                          return true;
                      default:
                          switch (p_146201_2_)
                          {
                              case 14:
                                  if (GuiScreen.isCtrlKeyDown())
                                  {
                                      if (this.isEnabled)
                                      {
                                          this.deleteWords(-1);
                                      }
                                  }
                                  else if (this.isEnabled)
                                  {
                                      this.deleteFromCursor(-1);
                                  }
      
                                  return true;
                              case 199:
                                  if (GuiScreen.isShiftKeyDown())
                                  {
                                      this.setSelectionPos(0);
                                  }
                                  else
                                  {
                                      this.setCursorPositionZero();
                                  }
      
                                  return true;
                              case 203:
                                  if (GuiScreen.isShiftKeyDown())
                                  {
                                      if (GuiScreen.isCtrlKeyDown())
                                      {
                                          this.setSelectionPos(this.getNthWordFromPos(-1, this.getSelectionEnd()));
                                      }
                                      else
                                      {
                                          this.setSelectionPos(this.getSelectionEnd() - 1);
                                      }
                                  }
                                  else if (GuiScreen.isCtrlKeyDown())
                                  {
                                      this.setCursorPosition(this.getNthWordFromCursor(-1));
                                  }
                                  else
                                  {
                                      this.moveCursorBy(-1);
                                  }
      
                                  return true;
                              case 205:
                                  if (GuiScreen.isShiftKeyDown())
                                  {
                                      if (GuiScreen.isCtrlKeyDown())
                                      {
                                          this.setSelectionPos(this.getNthWordFromPos(1, this.getSelectionEnd()));
                                      }
                                      else
                                      {
                                          this.setSelectionPos(this.getSelectionEnd() + 1);
                                      }
                                  }
                                  else if (GuiScreen.isCtrlKeyDown())
                                  {
                                      this.setCursorPosition(this.getNthWordFromCursor(1));
                                  }
                                  else
                                  {
                                      this.moveCursorBy(1);
                                  }
      
                                  return true;
                              case 207:
                                  if (GuiScreen.isShiftKeyDown())
                                  {
                                      this.setSelectionPos(this.text.length());
                                  }
                                  else
                                  {
                                      this.setCursorPositionEnd();
                                  }
      
                                  return true;
                              case 211:
                                  if (GuiScreen.isCtrlKeyDown())
                                  {
                                      if (this.isEnabled)
                                      {
                                          this.deleteWords(1);
                                      }
                                  }
                                  else if (this.isEnabled)
                                  {
                                      this.deleteFromCursor(1);
                                  }
      
                                  return true;
                              default:
                                  if (ChatAllowedCharacters.isAllowedCharacter(p_146201_1_))
                                  {
                                      if (this.isEnabled)
                                      {
                                          this.writeText(Character.toString(p_146201_1_));
                                      }
      
                                      return true;
                                  }
                                  else
                                  {
                                      return false;
                                  }
                          }
                  }
              }
          }
      
          /**
           * Args: x, y, buttonClicked
           */
          public void mouseClicked(int p_146192_1_, int p_146192_2_, int p_146192_3_)
          {
              boolean flag = p_146192_1_ >= this.xPosition && p_146192_1_ < this.xPosition + this.width && p_146192_2_ >= this.yPosition && p_146192_2_ < this.yPosition + this.height;
      
              if (this.canLoseFocus)
              {
                  this.setFocused(flag);
              }
      
              if (this.isFocused && p_146192_3_ == 0)
              {
                  int l = p_146192_1_ - this.xPosition;
      
                  if (this.enableBackgroundDrawing)
                  {
                      l -= 4;
                  }
      
                  String s = this.field_146211_a.trimStringToWidth(this.text.substring(this.lineScrollOffset), this.getWidth());
                  this.setCursorPosition(this.field_146211_a.trimStringToWidth(s, l).length() + this.lineScrollOffset);
              }
          }
      
          /**
           * Draws the textbox
           */
          public void drawTextBox()
          {
              if (this.getVisible())
              {
                  if (this.getEnableBackgroundDrawing())
                  {
                      drawRect(this.xPosition - 1, this.yPosition - 1, this.xPosition + this.width + 1, this.yPosition + this.height + 1, -6250336);
                      drawRect(this.xPosition, this.yPosition, this.xPosition + this.width, this.yPosition + this.height, -16777216);
                  }
      
                  int i = this.isEnabled ? this.enabledColor : this.disabledColor;
                  int j = this.cursorPosition - this.lineScrollOffset;
                  int k = this.selectionEnd - this.lineScrollOffset;
                  String s = this.field_146211_a.trimStringToWidth(this.text.substring(this.lineScrollOffset), this.getWidth());
                  boolean flag = j >= 0 && j <= s.length();
                  boolean flag1 = this.isFocused && this.cursorCounter / 6 % 2 == 0 && flag;
                  int l = this.enableBackgroundDrawing ? this.xPosition + 4 : this.xPosition;
                  int i1 = this.enableBackgroundDrawing ? this.yPosition + (this.height - 8) / 2 : this.yPosition;
                  int j1 = l;
      
                  if (k > s.length())
                  {
                      k = s.length();
                  }
      
                  if (s.length() > 0)
                  {
                      String s1 = flag ? s.substring(0, j) : s;
                      j1 = this.field_146211_a.drawStringWithShadow(s1, l, i1, i);
                  }
      
                  boolean flag2 = this.cursorPosition < this.text.length() || this.text.length() >= this.getMaxStringLength();
                  int k1 = j1;
      
                  if (!flag)
                  {
                      k1 = j > 0 ? l + this.width : l;
                  }
                  else if (flag2)
                  {
                      k1 = j1 - 1;
                      --j1;
                  }
      
                  if (s.length() > 0 && flag && j < s.length())
                  {
                      this.field_146211_a.drawStringWithShadow(s.substring(j), j1, i1, i);
                  }
      
                  if (flag1)
                  {
                      if (flag2)
                      {
                          Gui.drawRect(k1, i1 - 1, k1 + 1, i1 + 1 + this.field_146211_a.FONT_HEIGHT, -3092272);
                      }
                      else
                      {
                          this.field_146211_a.drawStringWithShadow("_", k1, i1, i);
                      }
                  }
      
                  if (k != j)
                  {
                      int l1 = l + this.field_146211_a.getStringWidth(s.substring(0, k));
                      this.drawCursorVertical(k1, i1 - 1, l1 - 1, i1 + 1 + this.field_146211_a.FONT_HEIGHT);
                  }
              }
          }
      
          /**
           * draws the vertical line cursor in the textbox
           */
          private void drawCursorVertical(int p_146188_1_, int p_146188_2_, int p_146188_3_, int p_146188_4_)
          {
              int i1;
      
              if (p_146188_1_ < p_146188_3_)
              {
                  i1 = p_146188_1_;
                  p_146188_1_ = p_146188_3_;
                  p_146188_3_ = i1;
              }
      
              if (p_146188_2_ < p_146188_4_)
              {
                  i1 = p_146188_2_;
                  p_146188_2_ = p_146188_4_;
                  p_146188_4_ = i1;
              }
      
              if (p_146188_3_ > this.xPosition + this.width)
              {
                  p_146188_3_ = this.xPosition + this.width;
              }
      
              if (p_146188_1_ > this.xPosition + this.width)
              {
                  p_146188_1_ = this.xPosition + this.width;
              }
      
              Tessellator tessellator = Tessellator.instance;
              GL11.glColor4f(0.0F, 0.0F, 255.0F, 255.0F);
              GL11.glDisable(GL11.GL_TEXTURE_2D);
              GL11.glEnable(GL11.GL_COLOR_LOGIC_OP);
              GL11.glLogicOp(GL11.GL_OR_REVERSE);
              tessellator.startDrawingQuads();
              tessellator.addVertex((double)p_146188_1_, (double)p_146188_4_, 0.0D);
              tessellator.addVertex((double)p_146188_3_, (double)p_146188_4_, 0.0D);
              tessellator.addVertex((double)p_146188_3_, (double)p_146188_2_, 0.0D);
              tessellator.addVertex((double)p_146188_1_, (double)p_146188_2_, 0.0D);
              tessellator.draw();
              GL11.glDisable(GL11.GL_COLOR_LOGIC_OP);
              GL11.glEnable(GL11.GL_TEXTURE_2D);
          }
      
          public void setMaxStringLength(int p_146203_1_)
          {
              this.maxStringLength = p_146203_1_;
      
              if (this.text.length() > p_146203_1_)
              {
                  this.text = this.text.substring(0, p_146203_1_);
              }
          }
      
          /**
           * returns the maximum number of character that can be contained in this textbox
           */
          public int getMaxStringLength()
          {
              return this.maxStringLength;
          }
      
          /**
           * returns the current position of the cursor
           */
          public int getCursorPosition()
          {
              return this.cursorPosition;
          }
      
          /**
           * get enable drawing background and outline
           */
          public boolean getEnableBackgroundDrawing()
          {
              return this.enableBackgroundDrawing;
          }
      
          /**
           * enable drawing background and outline
           */
          public void setEnableBackgroundDrawing(boolean p_146185_1_)
          {
              this.enableBackgroundDrawing = p_146185_1_;
          }
      
          /**
           * Sets the text colour for this textbox (disabled text will not use this colour)
           */
          public void setTextColor(int p_146193_1_)
          {
              this.enabledColor = p_146193_1_;
          }
      
          public void setDisabledTextColour(int p_146204_1_)
          {
              this.disabledColor = p_146204_1_;
          }
      
          /**
           * Sets focus to this gui element
           */
          public void setFocused(boolean p_146195_1_)
          {
              if (p_146195_1_ && !this.isFocused)
              {
                  this.cursorCounter = 0;
              }
      
              this.isFocused = p_146195_1_;
          }
      
          /**
           * Getter for the focused field
           */
          public boolean isFocused()
          {
              return this.isFocused;
          }
      
          public void setEnabled(boolean p_146184_1_)
          {
              this.isEnabled = p_146184_1_;
          }
      
          /**
           * the side of the selection that is not the cursor, may be the same as the cursor
           */
          public int getSelectionEnd()
          {
              return this.selectionEnd;
          }
      
          /**
           * returns the width of the textbox depending on if background drawing is enabled
           */
          public int getWidth()
          {
              return this.getEnableBackgroundDrawing() ? this.width - 8 : this.width;
          }
      
          /**
           * Sets the position of the selection anchor (i.e. position the selection was started at)
           */
          public void setSelectionPos(int p_146199_1_)
          {
              int j = this.text.length();
      
              if (p_146199_1_ > j)
              {
                  p_146199_1_ = j;
              }
      
              if (p_146199_1_ < 0)
              {
                  p_146199_1_ = 0;
              }
      
              this.selectionEnd = p_146199_1_;
      
              if (this.field_146211_a != null)
              {
                  if (this.lineScrollOffset > j)
                  {
                      this.lineScrollOffset = j;
                  }
      
                  int k = this.getWidth();
                  String s = this.field_146211_a.trimStringToWidth(this.text.substring(this.lineScrollOffset), k);
                  int l = s.length() + this.lineScrollOffset;
      
                  if (p_146199_1_ == this.lineScrollOffset)
                  {
                      this.lineScrollOffset -= this.field_146211_a.trimStringToWidth(this.text, k, true).length();
                  }
      
                  if (p_146199_1_ > l)
                  {
                      this.lineScrollOffset += p_146199_1_ - l;
                  }
                  else if (p_146199_1_ <= this.lineScrollOffset)
                  {
                      this.lineScrollOffset -= this.lineScrollOffset - p_146199_1_;
                  }
      
                  if (this.lineScrollOffset < 0)
                  {
                      this.lineScrollOffset = 0;
                  }
      
                  if (this.lineScrollOffset > j)
                  {
                      this.lineScrollOffset = j;
                  }
              }
          }
      
          /**
           * if true the textbox can lose focus by clicking elsewhere on the screen
           */
          public void setCanLoseFocus(boolean p_146205_1_)
          {
              this.canLoseFocus = p_146205_1_;
          }
      
          /**
           * returns true if this textbox is visible
           */
          public boolean getVisible()
          {
              return this.visible;
          }
      
          /**
           * Sets whether or not this textbox is visible
           */
          public void setVisible(boolean p_146189_1_)
          {
              this.visible = p_146189_1_;
          }
      }
      

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

        Dans ton GuiChecker, tu crées un field de type FontRenderer appelé ‘fontRendererObj’, que tu n’initialises pas.
        Le problème est qu’ainsi tu “caches” le fontRendererObj de GuiScreen, qui lui a une valeur et donc ne ferra pas planter GuiTextBox.

        Donc la solution est de simplement supprimer cette ligne dans GuiChecker.java:

        private FontRenderer fontRendererObj;
        

        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
        • YeyvoY Hors-ligne
          Yeyvo
          dernière édition par

          Merci 😄
          mais du coup l’image n’est plus centré

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

            Il n’était pas centré avant non plus puisque ça plantait 🙂

            A priori, le TextGui a besoin d’un FontRenderer. Il faut donc bien lui en passer un, mais il faut le créer (ou l’obtenir). Dans ton code qui plante, tu déclares le font renderer,c’est tout.

            D’après le message précédent, j’imagine (je n’ai pas le code sous les yeux) qu’il te faut obtenir l’instance d’un font renderer depuis GuiScreen

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

              @‘Mokona78’:

              Il n’était pas centré avant non plus puisque ça plantait 🙂

              A priori, le TextGui a besoin d’un FontRenderer. Il faut donc bien lui en passer un, mais il faut le créer (ou l’obtenir). Dans ton code qui plante, tu déclares le font renderer,c’est tout.

              D’après le message précédent, j’imagine (je n’ai pas le code sous les yeux) qu’il te faut obtenir l’instance d’un font renderer depuis GuiScreen

              [font=Ubuntu, sans-serifquoi va ou ? xD              (si il était centré avant que j’ajoute la text box)]

              PS :C’est l’u de mes premier GUI .

              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

                @‘Mokona78’:

                Il n’était pas centré avant non plus puisque ça plantait 🙂

                A priori, le TextGui a besoin d’un FontRenderer. Il faut donc bien lui en passer un, mais il faut le créer (ou l’obtenir). Dans ton code qui plante, tu déclares le font renderer,c’est tout.

                D’après le message précédent, j’imagine (je n’ai pas le code sous les yeux) qu’il te faut obtenir l’instance d’un font renderer depuis GuiScreen

                Il y a déjà une instance de FontRenderer dans GuiScreen.java, donc toutes classe extends GuiScreen en a aussi une.
                Ce n’est pas ça le problème.

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

                  Si je lis le code ci-dessus:

                  • Je vois que GuiTextField extends Gui, et non GuiScreen.
                  • Et que GuiTextField a son propre FontRenderer.
                  • Un peu plus loin, je lis qu’il n’existe qu’un seul constructeur, qui prend comme premier paramètre une instance de FontRenderer.

                  D’où ma réponse.

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

                    Ah… je viens de voir que c’est la classe créée qui hérite de GuiScreen. Du coup, ok, je comprends la réponse.

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

                      donc du coup je fait quoi ?

                      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

                        Faut que tu changer les coordonnées dans le code du drawScreen.

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

                          Tu supprime ça :

                          
                          private static final int width = 0;
                          
                          private static final int height = 0;
                          
                          

                          Il ne faut pas mettre ces variables car elles sont déjà présentes dans la classe GuiScreen, surtout que les tiennes n’ont pas les bonnes valeurs.

                          Si je vous ai aidé, n'oubliez pas d’être heureux, j'aiderai encore +

                          AymericRed, moddeur expérimenté qui aide sur ce forum et qui peut accepter de faire un mod Forge rémunéré de temps en temps.

                          Mes tutos : Table de craft, plugin NEI, plugin JEI, modifier l'overlay
                          Je suis un membre apprécié et joueur, j'ai déjà obtenu 6 points de réputation.

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

                            je voudrais ajouté un drawString mais ça me causait des problème je fait comment ?

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

                              Quoi comme problèmes ?

                              Si je vous ai aidé, n'oubliez pas d’être heureux, j'aiderai encore +

                              AymericRed, moddeur expérimenté qui aide sur ce forum et qui peut accepter de faire un mod Forge rémunéré de temps en temps.

                              Mes tutos : Table de craft, plugin NEI, plugin JEI, modifier l'overlay
                              Je suis un membre apprécié et joueur, j'ai déjà obtenu 6 points de réputation.

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

                                je voudrais ajouté  ça :
                                           [font=monospace```java
                                ] fontrenderer.drawStringWithShadow(“This is the test string!”, 1, 1, 0xffffffff);[font=monospace

                                mais j'ai un problémme avec :
                                [font=monospace**```java
                                ]private** [font=monospaceFontRenderer][font=monospace fontRendererObj][font=monospace;
                                ```]
                                
                                [font=monospacevoir le message de **[[color=#0072bc]**★jglrxavpok★**]](https://www.minecraftforgefrance.fr/member.php?action=profile&uid=33)**[size=small ]

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

                                  Tu n’as pas a mettre ça :

                                  private FontRenderer fontRendererObj;
                                  ``` car il est déjà dans GuiScreen.

                                  Si je vous ai aidé, n'oubliez pas d’être heureux, j'aiderai encore +

                                  AymericRed, moddeur expérimenté qui aide sur ce forum et qui peut accepter de faire un mod Forge rémunéré de temps en temps.

                                  Mes tutos : Table de craft, plugin NEI, plugin JEI, modifier l'overlay
                                  Je suis un membre apprécié et joueur, j'ai déjà obtenu 6 points de réputation.

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

                                               fontrenderer.drawStringWithShadow("This is the test string!", 1, 1, 0xffffffff);
                                    

                                    erreur  :   fontrenderer cannot be resolved

                                    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

                                      this.fontRendererObj.drawStringWithShadow(“This is the test string!”, 1, 1, 0xffffffff);

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

                                        je voudrais s’avoir comment utilisé se que le joueur a écrit dans la TextBox et cherché si il n’y a pas de joueur connécté qui as le même pseudo

                                        je sais que je peut utilisé ```java
                                        textfield.getText()

                                        
                                        par pitié ne me dites pas que je vais utilisé des packets

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

                                          Si, il faut que tu envoies le nom su joueur au serveur qui regarde si il est connecté, mais il mesemble que l’on peut faire le test directement côté client, je regarde…

                                          EDIT : pas besoin de packet pour savoir si un joueur est connecté :

                                          NetworkPlayerInfo playerInfo = mc.getNetHandler().getPlayerInfo(textfield.getText());
                                          

                                          Si le joueur n’est pas connecté, playerInfo va être null, sinon il correspondra au NetworkPlayerInfo de ce joueur.

                                          Si je vous ai aidé, n'oubliez pas d’être heureux, j'aiderai encore +

                                          AymericRed, moddeur expérimenté qui aide sur ce forum et qui peut accepter de faire un mod Forge rémunéré de temps en temps.

                                          Mes tutos : Table de craft, plugin NEI, plugin JEI, modifier l'overlay
                                          Je suis un membre apprécié et joueur, j'ai déjà obtenu 6 points de réputation.

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

                                            je le mets ou ??

                                            1 réponse Dernière réponse Répondre Citer 0
                                            • 1
                                            • 2
                                            • 3
                                            • 1 / 3
                                            • Premier message
                                              Dernier message
                                            Design by Woryk
                                            ContactMentions Légales

                                            MINECRAFT FORGE FRANCE © 2024

                                            Powered by NodeBB