Crash serveur flan mod
-
Je ne peux pas te répondre il faudrait que tu envoies juste la fonction concerné par l’erreur mais sans code source, si tu veux bien faire ceci : getDriveableData().parts.get(EnumDriveablePart.core).dead, je le ferai comme ça:
if(getDriveableData() != null) { if(getDriveableData().parts != null) { if(getDriveableData().parts.get(EnumDriveablePart.core) != null) { if(getDriveableData().parts.get(EnumDriveablePart.core).dead != null) { // TODO: Ici ton code après tout ces null checks } } } }Donc des null check à tout les nouveaux objects rencontrés, on ne sait jamais, tout peut-être null mais aussi normalement Flan’s Mod n’a pas d’erreur aussi minime, si tu n’as pas trop modifié le code source, je te conseille plutôt de porter tes réflexions sur pourquoi ça fait ceci, pourquoi … serait null, tu utilises des contents packs qui marchent bien ? Ce NPE arrive lorsque tu fais quoi ? … Voilà, bonne réfléxion

-
engrous je mais quoi en null check
-
Je prends ça clairement pour une blague… Je t’ai pondu une très belle réponse, si tu n’es pas foutu de répondre correctement et de prendre en considération ce qu’on te conseille… Clairement ne viens pas sur un Forum !
-
voila je vien de faire avec ton code sauf que j ai la ligne if(getDriveableData().parts.get(EnumDriveablePart.core).dead != null)
qui m’indique une erreursa me donne sa
if(getDriveableData() != null) { if(getDriveableData().parts != null) { if(getDriveableData().parts.get(EnumDriveablePart.core) != null) { if(getDriveableData().parts.get(EnumDriveablePart.core).dead != null) { if(!worldObj.isRemote) { for(DriveablePart part : driveableData.parts.values()) { if(part.health > 0 && !part.dead) killPart(part); } } setDead(); } } } } } -
@‘impuuu’:
qui m’indique une erreur
Et je suppose que nous devons deviner cette erreur ? Quoi comme erreur ?
-
Je pense que le .dead ne vaut rien, puisque c’est un copier-coller de mon code que j’ai fournis, comme exemple fictif… x)
-
quand je mais mas souris sur l’erreur qui est le if(getDriveableData().parts.get(EnumDriveablePart.core).dead != null) sa me donne
The operator != is undefined for the argument type(s) boolean, null -
Retire le != null.
Envoyé de mon RAINBOW LITE 4G en utilisant Tapatalk
-
Je tiens à souligner que le code est ici : https://github.com/minette2400/FlansMod/blob/1.7.10/src/main/java/com/flansmod/common/driveables/EntityDriveable.java
//If the core was destroyed, kill the driveable if(getDriveableData().parts.get(EnumDriveablePart.core).dead) { if(!worldObj.isRemote) { for(DriveablePart part : driveableData.parts.values()) { if(part.health > 0 && !part.dead) killPart(part); } } setDead(); }Et je crois que du coup il n’y a pas besoin du !, mais bon impuu je t’invite quand même à revoir cette page, https://openclassrooms.com/courses/apprenez-a-programmer-en-java/les-variables-et-les-operateurs , c’est une erreur de base :X
-
Ah oui il n’y a pas besoin du ! j’edit mon message.
Envoyé de mon RAINBOW LITE 4G en utilisant Tapatalk
-
donc je retrire le ! ses tout pas plus est benjamin merci de m avoir aidé puis m avoir conseillé cette page
-
Testes impuuu et dis nous en des nouvelles (il faut prendre des initiatives)
-
si je retire les ! sa me dit “add to cast Boolean” , "Changer type of ‘dead’ to ‘Object’ " est "Insert ‘!=null’ check "
-
Alors on ne peut pas deviner ton code après plus de 6 messages… De plus les majuscules, l’orthographe et savoir bien recopier les erreurs et les bases en Java, c’est en option ?
-
je vien de retirer le . dead est le bug est reglé mais sa donne le meme code
regarde un peu mais si ses bon je peut retiré la ligne ou il avait le . deadcode:
if(getDriveableData().parts != null) { if(getDriveableData().parts.get(EnumDriveablePart.core) != null) { if(getDriveableData().parts.get(EnumDriveablePart.core) != null) { if(!worldObj.isRemote) { for(DriveablePart part : driveableData.parts.values()) { if(part.health > 0 && !part.dead) killPart(part); } } setDead(); } } } } } -
Alors impuuu, j’ai été gentil d’essayé de te prévenir, mais supprimer une condition comme ça de si la partie est morte, je n’ai jamais trouvé une idée aussi … ! Tu ne sais simplement pas ce que tu fais et tu écris toujours aussi mal ! Plus d’aide de ma part.
-
if(getDriveableData().parts.get(EnumDriveablePart.core) != null)devient :
if(getDriveableData().parts.get(EnumDriveablePart.core).dead)Si la partie principale (core) est morte, on, fait ce qu’il y a après, c’est à dire tuer les autres parties.
Il ne faut pas modifier au hasard comme ça le code qu’on prend, et trouves-tu logique d’avoir deux if indentiques qui se suivent ? -
donc tout sa devien
1. **if**(getDriveableData().parts != **null**) 2. { 3. **if**(getDriveableData().parts.**get**(EnumDriveablePart.core) != **null**) 4. { 5. [font=monospace**if**][font=monospace(][font=monospacegetDriveableData][font=monospace().][font=monospaceparts][font=monospace.][font=monospace**get**][font=monospace(][font=monospaceEnumDriveablePart][font=monospace.][font=monospacecore][font=monospace).][font=monospacedead][font=monospace)] 6. { 7. **if**(!worldObj.isRemote) 8. { 9. **for**(DriveablePart part : driveableData.parts.values()) 10. { 11. **if**(part.health > 0 && !part.dead) 12. killPart(part); 13. } 14. } setDead(); 15. } 16. } 17. } 18. } 19. } -
Oui, tu n’as qu’à lancer le jeu pour tester.
-
oui mais ses le crach d un pack est ses un crach serveur