summaryrefslogtreecommitdiff
path: root/src/main/java/net/tylermurphy/Minecraft/Scripts/PlayerScript.java
blob: eb64b14c7346b7eeee9a55189e478d782d55378f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
package net.tylermurphy.Minecraft.Scripts;

import static net.tylermurphy.Minecraft.UI.UIMaster.bindUI;
import static net.tylermurphy.Minecraft.UI.UIMaster.getImage;
import static net.tylermurphy.Minecraft.UI.UIMaster.getText;
import static net.tylermurphy.Minecraft.UI.UIMaster.setEnabled;

import net.tylermurphy.Minecraft.Main;
import net.tylermurphy.Minecraft.Scene.World;

public class PlayerScript extends Script {

	int last_height = 0;

	public void Update() {
		World.player.isFalling = World.player.isInAir && !World.player.isFlying && !World.player.isSwimming;
		if(World.player.isSwimming || World.player.isFlying) last_height = (int) World.player.getTransform().getGlobalPosition().y;
		
		if(World.player.isFalling) {
			if(!World.player.wasFalling)
				last_height = (int) World.player.getTransform().getGlobalPosition().y;
			World.player.wasFalling = true;
		} else if(World.player.wasFalling) {
			int current_height = (int) World.player.getTransform().getGlobalPosition().y;
			float height_fell = last_height - current_height;
			if(height_fell > 3)
				World.player.health -= height_fell - 3;
			World.player.health = Math.max(World.player.health,0);
			World.player.wasFalling = false;
		}
		
		if(World.player.health <= 0) {
			World.player.isDead = true;
			bindUI(1);
			setEnabled(false);
			bindUI(0);
			getText("dead").setEnabled(true);
			getImage("crosshair").setEnabled(false);
		}
		World.world_origin.recalculateOrigin();
		if(!World.player.isDead && Main.getTicks() % 80 == 0 && World.player.health < 20) World.player.health++;
	}

}