Goldorion / Fabric-Generator-MCreator

A Fabric Generator plugin for MCreator
Other
111 stars 42 forks source link

[Bug] Custom projecile java models cause a build error. #453

Open Micasddsa opened 1 year ago

Micasddsa commented 1 year ago

Issue description

If a projectile of a range weapon is a custom Java Model, the mod will not compile.

How to reproduce this issue?

Step 1: Create a range weapon. Step 2: Configure it any way you want. Step 3: Change the model from "Default" to any Java model, Step 4: Assign textures and save. Step 5: Build.

Operating system

Windows

Details

MCreator Version: MCreator.EAP.2023.222518 Generator Version: generator-fabric-1.20.1 (1.9.6)

Example workspace

(Because you will need a model and texture, you can grab this workspace with models and textures already set. beware of no effort art + modeling! 😃)

customjavarangeitem_bug.zip

Logs

Executing Gradle task: build 
Build info: MCreator 2023.2.22518 EAP (22518), fabric-1.20.1, 64-bit, 32633 MB, Windows 10, JVM 17.0.5, JAVA_HOME: C:\Users\Micasddsa\Downloads\MCreator.EAP.2023.222518.Windows.64bit\MCreatorEAP2023222518\jdk, started on: 2023-08-16-01:21:24 

> Configure project : 
Fabric Loom: 1.2.7 
> Task :compileJava FAILED 
[C:\Users\Micasddsa\MCreatorWorkspaces\bugcatcher\src\main\java\lol\bug\catcher\client\renderer\BugBowRenderer.java:32](file:///C:/Users/Micasddsa/MCreatorWorkspaces/bugcatcher/src/main/java/lol/bug/catcher/client/renderer/BugBowRenderer.java:32): error: cannot find symbol 
      poseStack.mulPose(Vector3f.YP.rotationDegrees(Mth.lerp(partialTicks, entityIn.yRotO, entityIn.getYRot()) - 90)); 
                                ^ 
  symbol:   variable YP 
  location: class Vector3f 
[C:\Users\Micasddsa\MCreatorWorkspaces\bugcatcher\src\main\java\lol\bug\catcher\client\renderer\BugBowRenderer.java:33](file:///C:/Users/Micasddsa/MCreatorWorkspaces/bugcatcher/src/main/java/lol/bug/catcher/client/renderer/BugBowRenderer.java:33): error: cannot find symbol 
      poseStack.mulPose(Vector3f.ZP.rotationDegrees(90 + Mth.lerp(partialTicks, entityIn.xRotO, entityIn.getXRot()))); 
                                ^ 
  symbol:   variable ZP 
  location: class Vector3f 
2 errors 
FAILURE: Build failed with an exception. 
* What went wrong: 
Execution failed for task ':compileJava'. 
> Compilation failed; see the compiler error output for details. 
* Try: 
> Run with --stacktrace option to get the stack trace. 
> Run with --info or --debug option to get more log output. 
> Run with --scan to get full insights. 
* Get more help at https://help.gradle.org 
BUILD FAILED in 1s 
1 actionable task: 1 executed

Issue tracker rule checks (please read carefully)

Goldorion commented 1 year ago

For the Java model, did you use a Forge Java Entity or a Fabric Entity? I knownit sounds not jormal, but you can't use Fabric models because they use another type of mappings and so, they are can not be aupported.

Micasddsa commented 1 year ago

I dunno. I just whipped up a model using a copy of Blockbench Portable.

then again that might be the issue :( (It's on version 4.4.1)

I might re-evaluate this issue and retest it with a newer version of Blockbench.

Goldorion commented 1 year ago

I tested using the latest version of Blockbench and using Forge - Mojmaps 1.17+ and it worked fine. Make sure you use these settings and it should work.

CasterMx13 commented 11 months ago

I am running into this same issue, but I'm using the latest release of Mcreator, Fabric, and Blockbench. I am using the Forge 1.17+Mojmaps .java entity as well. I ran a test with the same model in both Fabric and Forge environments; Forge has no errors but Fabric gives me the same error code as shown above. I've been trying to solve this issue for weeks and finally came across this issue request but I seem to be doing everything correctly.

I'm hoping I'm just an idiot that has missed something obvious lol Any help will be appreciated.

Attached is the test model that causes the variable YP/ZP errors. test13.zip

BenjaTK commented 11 months ago

I am having those same issues aswell.