Краш getWorldTime()

Версия Minecraft
1.7.10
API
Forge
Крашит из-за if(player.getEntityWorld().getWorldTime() % distance == 0L) {
В рендере предмета
at ru.....RendererItem.renderItem(RendererItem .java:133)
 
Решение
Чел, ты в курсе как происходит приведение к инту?
Java:
int distance = (int) Math.sqrt(Math.pow(xP - xI, 2.0) + Math.pow(zP - zI, 2.0));

Получаем тут например 0,9546545121...
И приводим его к инту:
int distance = 0;

И получаем:
1601797652186.png
Удивительно, не так ли?
Java:
                if (entity != null) {
                    ItemRareDetector detector = (ItemRareDetector) item.getItem();
                    ItemRare item = (ItemRare) entity.getEntityItem().getItem();
                    double xI = Math.abs(entity.posX);
                    double zI = Math.abs(entity.posZ);
                    double xP = Math.abs(player.posX);
                    double zP = Math.abs(player.posZ);
                    int distance = (int) Math.sqrt(Math.pow(xP - xI, 2.0) + Math.pow(zP - zI, 2.0));
                    if (player.getEntityWorld().getWorldTime() % distance == 0 && distance <= 18) {
                        if (detector.getArtRare() >= item.getRare()) {
                            
                        }
                    }
                }
 

ReyMagos

Тег-бомбастер
412
7
121
Мы не знаем как ты получаешь игрока. И краша не видим до сих пор.
Java:
                if (entity != null) {
                    ItemRareDetector detector = (ItemRareDetector) item.getItem();
                    ItemRare item = (ItemRare) entity.getEntityItem().getItem();
                    double xI = Math.abs(entity.posX);
                    double zI = Math.abs(entity.posZ);
                    double xP = Math.abs(player.posX);
                    double zP = Math.abs(player.posZ);
                    int distance = (int) Math.sqrt(Math.pow(xP - xI, 2.0) + Math.pow(zP - zI, 2.0));
                    if (player.getEntityWorld().getWorldTime() % distance == 0 && distance <= 18) {
                        if (detector.getArtRare() >= item.getRare()) {
                           
                        }
                    }
                }
Этот код вообще никак не поможет в решении проблемы.
А ты точно знаешь... хотя ладно @will0376 это твоя коронная фраза.
 
А плеера не хочешь на нул проверить?
Это ненужная проверка.

crash:
[10:06:42] [Server thread/INFO]: Player759[local:E:35a5bc2c] logged in with entity id 264 at (709.9641096917271, 4.0, -921.7517935227665)
[10:06:43] [Server thread/INFO]: Player759 joined the game
[10:06:52] [Server thread/WARN]: Can't keep up! Did the system time change, or is the server overloaded? Running 2287ms behind, skipping 45 tick(s)
[10:06:54] [Server thread/INFO]: Player759 has just earned the achievement [Taking Inventory]
[10:06:54] [Client thread/INFO]: [CHAT] Player759 has just earned the achievement [Taking Inventory]
[10:07:02] [Server thread/INFO]: Stopping server
[10:07:02] [Server thread/INFO]: Saving players
[10:07:02] [Server thread/INFO]: Saving worlds
[10:07:02] [Server thread/INFO]: Saving chunks for level 'New World'/Overworld
[10:07:03] [Server thread/INFO]: Saving chunks for level 'New World'/Nether
[10:07:03] [Server thread/INFO]: Saving chunks for level 'New World'/The End
[10:07:03] [Server thread/INFO] [FML]: Unloading dimension 0
[10:07:03] [Server thread/INFO] [FML]: Unloading dimension -1
[10:07:03] [Server thread/INFO] [FML]: Unloading dimension 1
[10:07:03] [Server thread/INFO] [FML]: Applying holder lookups
[10:07:03] [Server thread/INFO] [FML]: Holder lookups applied
[10:07:04] [Client thread/FATAL]: Unreported exception thrown!
java.lang.ArithmeticException: / by zero
    at ru....renderItem.renderItem(renderItem.java:136) ~[renderItem.class:?]
    at net.minecraftforge.client.ForgeHooksClient.renderEquippedItem(ForgeHooksClient.java:232) ~[ForgeHooksClient.class:?]
    at net.minecraft.client.renderer.ItemRenderer.renderItem(ItemRenderer.java:86) ~[ItemRenderer.class:?]
    at net.minecraft.client.renderer.ItemRenderer.renderItemInFirstPerson(ItemRenderer.java:511) ~[ItemRenderer.class:?]
    at net.minecraft.client.renderer.EntityRenderer.renderHand(EntityRenderer.java:797) ~[EntityRenderer.class:?]
    at net.minecraft.client.renderer.EntityRenderer.renderWorld(EntityRenderer.java:1437) ~[EntityRenderer.class:?]
    at net.minecraft.client.renderer.EntityRenderer.updateCameraAndRender(EntityRenderer.java:1091) ~[EntityRenderer.class:?]
    at net.minecraft.client.Minecraft.runGameLoop(Minecraft.java:1067) ~[Minecraft.class:?]
    at net.minecraft.client.Minecraft.run(Minecraft.java:962) [Minecraft.class:?]
    at net.minecraft.client.main.Main.main(Main.java:164) [Main.class:?]
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_201]
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_201]
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_201]
    at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_201]
    at net.minecraft.launchwrapper.Launch.launch(Launch.java:135) [launchwrapper-1.12.jar:?]
    at net.minecraft.launchwrapper.Launch.main(Launch.java:28) [launchwrapper-1.12.jar:?]
    at net.minecraftforge.gradle.GradleStartCommon.launch(Unknown Source) [start/:?]
    at GradleStart.main(Unknown Source) [start/:?]
[10:07:04] [Client thread/INFO] [STDOUT]: [net.minecraft.client.Minecraft:displayCrashReport:388]: ---- Minecraft Crash Report ----
// Uh... Did I do that?

Time: 04.10.20 10:07
Description: Unexpected error

java.lang.ArithmeticException: / by zero
    at ru....renderItem.renderItem(renderItem.java:136)
    at net.minecraftforge.client.ForgeHooksClient.renderEquippedItem(ForgeHooksClient.java:232)
    at net.minecraft.client.renderer.ItemRenderer.renderItem(ItemRenderer.java:86)
    at net.minecraft.client.renderer.ItemRenderer.renderItemInFirstPerson(ItemRenderer.java:511)
    at net.minecraft.client.renderer.EntityRenderer.renderHand(EntityRenderer.java:797)
    at net.minecraft.client.renderer.EntityRenderer.renderWorld(EntityRenderer.java:1437)
    at net.minecraft.client.renderer.EntityRenderer.updateCameraAndRender(EntityRenderer.java:1091)
    at net.minecraft.client.Minecraft.runGameLoop(Minecraft.java:1067)
    at net.minecraft.client.Minecraft.run(Minecraft.java:962)
    at net.minecraft.client.main.Main.main(Main.java:164)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at net.minecraft.launchwrapper.Launch.launch(Launch.java:135)
    at net.minecraft.launchwrapper.Launch.main(Launch.java:28)
    at net.minecraftforge.gradle.GradleStartCommon.launch(Unknown Source)
    at GradleStart.main(Unknown Source)


A detailed walkthrough of the error, its code path and all known details is as follows:
---------------------------------------------------------------------------------------

-- Head --
Stacktrace:
    at ru....renderItem.renderItem(renderItem.java:136)
    at net.minecraftforge.client.ForgeHooksClient.renderEquippedItem(ForgeHooksClient.java:232)
    at net.minecraft.client.renderer.ItemRenderer.renderItem(ItemRenderer.java:86)
    at net.minecraft.client.renderer.ItemRenderer.renderItemInFirstPerson(ItemRenderer.java:511)
    at net.minecraft.client.renderer.EntityRenderer.renderHand(EntityRenderer.java:797)
    at net.minecraft.client.renderer.EntityRenderer.renderWorld(EntityRenderer.java:1437)

-- Affected level --
Details:
    Level name: MpServer
    All players: 1 total; [EntityClientPlayerMP['Player759'/264, l='MpServer', x=710,77, y=5,62, z=-920,25]]
    Chunk stats: MultiplayerChunkCache: 25, 25
    Level seed: 0
    Level generator: ID 01 - flat, ver 0. Features enabled: false
    Level generator options:
    Level spawn location: World: (731,4,-944), Chunk: (at 11,0,0 in 45,-59; contains blocks 720,0,-944 to 735,255,-929), Region: (1,-2; contains chunks 32,-64 to 63,-33, blocks 512,0,-1024 to 1023,255,-513)
    Level time: 20196 game time, 14544 day time
    Level dimension: 0
    Level storage version: 0x00000 - Unknown?
    Level weather: Rain time: 0 (now: false), thunder time: 0 (now: false)
    Level game mode: Game mode: creative (ID 1). Hardcore: false. Cheats: false
    Forced entities: 12 total; [EntitySheep['Sheep'/70, l='MpServer', x=690,88, y=4,00, z=-957,94], EntityCreeper['Creeper'/103, l='MpServer', x=746,50, y=4,00, z=-908,50], EntityBat['Bat'/104, l='MpServer', x=743,81, y=6,10, z=-884,25], EntityClientPlayerMP['Player759'/264, l='MpServer', x=710,77, y=5,62, z=-920,25], EntityCow['Cow'/74, l='MpServer', x=711,42, y=4,00, z=-956,01], EntityItem['item.item.vivert'/586, l='MpServer', x=711,06, y=4,13, z=-919,78], EntitySlime['Slime'/75, l='MpServer', x=733,93, y=4,00, z=-934,53], EntitySlime['Slime'/77, l='MpServer', x=727,82, y=3,54, z=-860,18], EntitySlime['Slime'/87, l='MpServer', x=754,34, y=3,54, z=-954,22], EntityBat['Bat'/504, l='MpServer', x=748,19, y=7,10, z=-881,25], EntitySlime['Slime'/57, l='MpServer', x=661,82, y=3,60, z=-941,31], EntitySlime['Slime'/58, l='MpServer', x=701,12, y=2,58, z=-872,90]]
    Retry entities: 0 total; []
    Server brand: fml,forge
    Server type: Integrated singleplayer server
Stacktrace:
    at net.minecraft.client.multiplayer.WorldClient.addWorldInfoToCrashReport(WorldClient.java:415)
    at net.minecraft.client.Minecraft.addGraphicsAndWorldToCrashReport(Minecraft.java:2566)
    at net.minecraft.client.Minecraft.run(Minecraft.java:991)
    at net.minecraft.client.main.Main.main(Main.java:164)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at net.minecraft.launchwrapper.Launch.launch(Launch.java:135)
    at net.minecraft.launchwrapper.Launch.main(Launch.java:28)
    at net.minecraftforge.gradle.GradleStartCommon.launch(Unknown Source)
    at GradleStart.main(Unknown Source)
 
1,417
44
594
Чел, ты в курсе как происходит приведение к инту?
Java:
int distance = (int) Math.sqrt(Math.pow(xP - xI, 2.0) + Math.pow(zP - zI, 2.0));

Получаем тут например 0,9546545121...
И приводим его к инту:
int distance = 0;

И получаем:
1601797652186.png
Удивительно, не так ли?
 
Сверху