Changer l'appelle de l'EntityPlayer



  • Bonjour,
    mon problème est le suivant ; je dois faire un nouvel inventaire pour mon joueur sur mon mod, mais je dois passer par la
    classe EntityPlayer. Je dois modifier l'appelle du constructeur pour remplacer une partie du code qui est la suivante :

    %(#a9b7c6)[[font=Courier New]this].%(#9876aa)[inventoryContainer ]= %(#cc7832)[new ]ContainerPlayer(%(#cc7832)[this].%(#9876aa)[inventory]%(#cc7832)[, ]!worldIn.%(#9876aa)[isRemote]%(#cc7832)[, this])%(#cc7832)[;]
    

    par

    %(#a9b7c6)[[font=Courier New]this].%(#9876aa)[inventoryContainer ]= %(#cc7832)[new MyCustom]ContainerPlayer(%(#cc7832)[this].%(#9876aa)[inventory]%(#cc7832)[, ]!worldIn.%(#9876aa)[isRemote]%(#cc7832)[, this])%(#cc7832)[;]
    

    Je ne connais pas d'autres méthodes d'y parvenir que par la manière d'un Event qui détecterait si le serveur a besoin de faire spawn
    un EntityPlayer en changeant la classe demandée par une autre. Hélas, j'ai la conception de la chose (peut-être même la mauvaise qui sait) mais ne saurais l'appliqué.

    Merci pour l'aide fournit au futur  😉



  • J'ai mal compris ce que tu as voulu dire mais le faire via un event tel que celui que tu as proposé est bien, l'event étant EntityJoinWorldEvent.



  • Salut !

    Je souhaite changer l'inventaire du joueur par un autre grossièrement, sauf que le container du joueur par défaut me pose problème sur 2 points de vues; graphique au niveau de la GUI ce n'est absolument pas se que je cherche, car je dois modifier la gui pour l'adapter à mon Container, et par défaut qui dis changer de Container = changer les slots. Ces slots seront réservés à 15 items maximum sur le joueur et également un seul slot d'armure.

    Les slots d'armures ne sont pas modifiables dans l'inventaire du joueur…
    (Je ne sais pas si je me suis fais comprendre correctement ?)

    Néanmoins, Mosca m'a proposé une alternative sur laquelle j'essaie de me projeter avec les capabilities.



  • Alors le mieux c'est de déjà remplacer l'inventaire du joueur avec le code que tu as mis plus haut, ensuite avec des évents tels que GuiOpenEvent ou PlayerInteractEvent (me suis peut être trompe dans le nom mais l'event quand on interragi avec block ou entité), tu remplaces le gui ET le container par des trucs custom.



  • @'AymericRed':

    Alors le mieux c'est de déjà remplacer l'inventaire du joueur avec le code que tu as mis plus haut, ensuite avec des évents tels que GuiOpenEvent ou PlayerInteractEvent (me suis peut être trompe dans le nom mais l'event quand on interragi avec block ou entité), tu remplaces le gui ET le container par des trucs custom.

    Alors, oui, c'est le mieux, mais comme je le dis; je dois passer par une méthode de l'Entité du joueur, et sans CoreMod on ne peut pas. Donc je suis obligé de créer un second inventaire plus ou moins abstrait qu redirige tout les items du premier inventaire sur le second.



  • Nope pas besoin de coremod, juste d'events (je l'ai déjà fait) ^^ (EntityJoinWorldEvent pour remplacer l'inventaire).