• Es freut uns dass du in unser Minecraft Forum gefunden hast. Hier kannst du mit über 130.000 Minecraft Fans über Minecraft diskutieren, Fragen stellen und anderen helfen. In diesem Minecraft Forum kannst du auch nach Teammitgliedern, Administratoren, Moderatoren , Supporter oder Sponsoren suchen. Gerne kannst du im Offtopic Bereich unseres Minecraft Forums auch über nicht Minecraft spezifische Themen reden. Wir hoffen dir gefällt es in unserem Minecraft Forum!

[MOD] akzeptiert ItemStack[] nicht

JTK222

Threadripper
Registriert
5 September 2013
Beiträge
1.150
Diamanten
323
Minecraft
JTK222
Hallo Leute,
da meine Google suche leider keine funktionierende Lösung zu tage gebracht hat,
wollte ich mein Glück mal hier im Forum versuch mit der Hoffnung jemand kennt eine Lösung:

Hier einmal der Fehler den ich erhalte:
Code:
error: constructor Craft
ingRecipe in class CraftingRecipe cannot be applied to given types;
CM.RegisterRecipe(new CraftingRecipe(DRPMedievalBlocks.cauldron, "Stews",
new ItemStack(Items.mushroom_stew,3), new ItemStack[]{
new ItemStack(Items.bowl,3)},null));
                                                  ^
  required: Block,String,ItemStack,ArrayList<ItemStack>
  found: Cauldron,String,ItemStack,ItemStack[],<null>
  reason: actual and formal argument lists differ in length

Ich habe einige Itemstacks rausgekürzt zum Platzsparen.

Nun dieser Fehler erscheint nur beim Compilen beim Testen taucht jedoch kein Fehler auf.
Der Code müsste eigentlich auch stimmen:
Der Constructor:
Code:
    public CraftingRecipe(Block craftingStation ,String Category, ItemStack output, ItemStack[] mainIngredients,ItemStack[] additionalIngredients)
Und der Code in dem ich es aufrufe:
Code:
CM.RegisterRecipe(new CraftingRecipe(null, "Items", new ItemStack(DRPMedievalItems.itemTriggerTrap,2), new ItemStack[]{new ItemStack(Items.string,2), new ItemStack(Blocks.tripwire_hook,1)},null));

Ich weiß wirklich nicht woran es liegt würde mich wirklich über hilfe freuen :(
 

Asgarioth

Kuhfänger
Registriert
17 Juli 2014
Beiträge
50
Diamanten
250
Minecraft
Asgarioth
Hi,

Schwere Frage ohne etwas mehr Zusammenhang. Zwei Codezeilen und ein Fehler ist wenig. ;)

Was Du mal schauen könntest:
Erbt die betreffende Klasse von einer Anderen? Falls ja solltest Du prüfen, ob die Übergabe an den Konstruktor der Superklasse korrekt ist.

Der Fehler taucht im Zusammenhang mit Konstruktoren oft auf, wenn an der Stelle etwas nicht stimmt.

Grüße,
~Asgarioth
 

JTK222

Threadripper
Registriert
5 September 2013
Beiträge
1.150
Diamanten
323
Minecraft
JTK222
Nein keine der beiden Klassen erbt von einer anderen.

Vielleicht nochmal eine Info die Wichtig sein könnte:
Die Klasse CraftingRecipe befindet sich in einem anderen Projekt das ich als API nutze, während die andere Klasse sich in einem anderem Projekt befindet.

Hier ist nochmal der vollständige Source code nachdem Ich es auf Github hochgeladen habe.
https://github.com/JTK222/Dark-Role...et/drpmedieval/main/DarkRoleplayMedieval.java
https://github.com/JTK222/Dark-Role...et/drpcore/main/crafting/CraftingManager.java

Schonmal danke für die hilfe
 
Zuletzt bearbeitet:

Asgarioth

Kuhfänger
Registriert
17 Juli 2014
Beiträge
50
Diamanten
250
Minecraft
Asgarioth
Nunja... offensichtlich ist, dass einige Typen nicht passen. Der aufgerufene Konstruktor erwartet eine ArrayList und bekommt ein Array. Das ist unverträglich. Das Array müsste explizit konvertiert werden.

Da Du sagst, Du bindest das eine Projekt (den core) in das andere Projekt ein:
Hast Du eine andere Version des drpcore in deinem Projekt eingebunden und drpcore danach geändert ohne das in drpmedieval zu aktualisieren oder an der falschen Stelle (ich kenne deine Entwicklungsumgebung ja nicht)?

Da ich im Code direkt keinen Fehler sehe muss ich im Moment ansonsten passen. :(
 

JTK222

Threadripper
Registriert
5 September 2013
Beiträge
1.150
Diamanten
323
Minecraft
JTK222
Nunja... offensichtlich ist, dass einige Typen nicht passen. Der aufgerufene Konstruktor erwartet eine ArrayList und bekommt ein Array. Das ist unverträglich. Das Array müsste explizit konvertiert werden.

Ist im Source Code beides als Array also in dem Fall ItemStack[]
Sowohl im Constructor als auch beim aufrufen deswegen wundert mich der Fehler ja so sehr.


Da Du sagst, Du bindest das eine Projekt (den core) in das andere Projekt ein:
Hast Du eine andere Version des drpcore in deinem Projekt eingebunden und drpcore danach geändert ohne das in drpmedieval zu aktualisieren oder an der falschen Stelle (ich kenne deine Entwicklungsumgebung ja nicht)?

Habe ich auch schon gehoft hab jedoch alles überprüft bei den Versionen müsste alles passen :(

Da ich im Code direkt keinen Fehler sehe muss ich im Moment ansonsten passen. :(

Dennoch vielen dank für die Hilfe :( Werde wohl mal direkt im Forge Forum nachfragen müssen auch wenn die meisten dort relativ unfreundlich sind :/
 

JTK222

Threadripper
Registriert
5 September 2013
Beiträge
1.150
Diamanten
323
Minecraft
JTK222
Da Du sagst, Du bindest das eine Projekt (den core) in das andere Projekt ein:
Hast Du eine andere Version des drpcore in deinem Projekt eingebunden und drpcore danach geändert ohne das in drpmedieval zu aktualisieren oder an der falschen Stelle (ich kenne deine Entwicklungsumgebung ja nicht)?

Das wars vielen Dank hatte bereits mal probleme mit gradle habe danach mal den Log vom setupDecompWorkspace befehl in ne Datei ausgeben lassen, da hat sich ergeben dass eine Datei fehlerhaft war und es dadurch anscheinend Irgendwass nicht erkannt hat.
Nachdem ich den Sourcecode in einen Frischen Workspace gepackt habe und nochmal den Setup befehl ausgeführt habe ging es danach versuche jetzt nochmal herauszufinden welche Datei das verursacht :/

Vielen dank für den Tipp hätte es sonst wahrscheinlich nicht gefunden ^^
 
Oben