- Joined
- Jul 11, 2020
- Messages
- 0
- Reaction score
- 25
- Points
- 0
Hey ich weiß nicht wie ich Strafe furn Bhop reinmache konntet ihr mir helfen ^^
Der (geskiddete) Code ist ziemlich ineffizient.Ich machs immer so -> https://hastebin.com/nivefinisu.cpp
Wieso ineffizient? Erklärung bitteDer (geskiddete) Code ist ziemlich ineffizient.
Ich empfehle, es einfach selbst zu programmieren (so schwer ist das gar nicht, wenn man sich etwas mit Trigonometrie auseinandergesetzt hat), also werde ich den Code auch nicht fertig & verbessert schicken.
Wieso ineffizient? Erklärung bitte
Minecraft.getMinecraft().thePlayer
if ((forward == 0.0F) && (strafe == 0.0F)) {
mc.thePlayer.motionX = 0.0D;
mc.thePlayer.motionZ = 0.0D;
} else if (forward != 0.0F) {
if (strafe >= 1.0F) {
yaw += (forward > 0.0F ? -45 : 45);
strafe = 0.0F;
} else if (strafe <= -1.0F) {
yaw += (forward > 0.0F ? 45 : -45);
strafe = 0.0F;
}
if (forward > 0.0F) {
forward = 1.0F;
} else if (forward < 0.0F) {
forward = -1.0F;
}
}
double mx = Math.cos(Math.toRadians(yaw + 90.0F));
double mz = Math.sin(Math.toRadians(yaw + 90.0F));
double ms = currentSpeed
ok vielen dank, was ich auch mal gesehen habe istKönnte man als Variable nehmen.Code:Minecraft.getMinecraft().thePlayer
Das ließe sich durch viel wenigere Zeilen ersetzen (ist wohl selbsterklärend).Code:if ((forward == 0.0F) && (strafe == 0.0F)) { mc.thePlayer.motionX = 0.0D; mc.thePlayer.motionZ = 0.0D; } else if (forward != 0.0F) { if (strafe >= 1.0F) { yaw += (forward > 0.0F ? -45 : 45); strafe = 0.0F; } else if (strafe <= -1.0F) { yaw += (forward > 0.0F ? 45 : -45); strafe = 0.0F; } if (forward > 0.0F) { forward = 1.0F; } else if (forward < 0.0F) { forward = -1.0F; } }
Da könnte man eine Variable nehmen, welche "Math.toRadians(yaw + 90.0F)" als "value hat" und diese dann bei Math.cos und Math.sin als parameter nehmen.Code:double mx = Math.cos(Math.toRadians(yaw + 90.0F)); double mz = Math.sin(Math.toRadians(yaw + 90.0F));
Dadurch wird eine Addition und ein Methoden-Aufruf entfernt, aber dafür die Variable zwei mal geladen und ein mal "gespeichert".
Das ist komplett sinnlos.Code:double ms = currentSpeed
if (mc.thePlayer.isAirborne) {
mc.thePlayer.onGround = true;
}
Wozu soll das sein?ok vielen dank Ich wollt
ok vielen dank, was ich auch mal gesehen habe ist
was hälst du davon?
Code:if (mc.thePlayer.isAirborne) { mc.thePlayer.onGround = true; }
Probiers doch aus dann hat man auch diesen "strafe" effektWozu soll das sein?