diff options
| author | realtradam <[email protected]> | 2020-03-18 00:58:15 -0400 |
|---|---|---|
| committer | realtradam <[email protected]> | 2020-03-18 00:58:15 -0400 |
| commit | 0fe77a326aec5732920dd3b23b36fd3405ff9e25 (patch) | |
| tree | 2494e1e6c6693c46dab5b2b1f90abc6720d85793 /Racing-Game/4WheelCar/BackWheel.gd | |
| parent | 5a33ed9381e43b50d56f2ef7f149baef83edcf7d (diff) | |
| download | optimal-direction-0fe77a326aec5732920dd3b23b36fd3405ff9e25.tar.gz optimal-direction-0fe77a326aec5732920dd3b23b36fd3405ff9e25.zip | |
Removed a lot of useless or commented out code
Diffstat (limited to 'Racing-Game/4WheelCar/BackWheel.gd')
| -rw-r--r-- | Racing-Game/4WheelCar/BackWheel.gd | 73 |
1 files changed, 11 insertions, 62 deletions
diff --git a/Racing-Game/4WheelCar/BackWheel.gd b/Racing-Game/4WheelCar/BackWheel.gd index 9c9adff..1d6ee18 100644 --- a/Racing-Game/4WheelCar/BackWheel.gd +++ b/Racing-Game/4WheelCar/BackWheel.gd @@ -1,48 +1,34 @@ -extends RigidBody2D +extends "res://4WheelCar/Wheel.gd" #Accelerating var hp = 4.0 var acceleration = 5 -var isForward = true - -var velocity - -var isSkid = false; - -var elapsed = 0 var gripDelay = 0 -var carAngle -var carVector -var velVector func _ready(): pass func _process(delta): + #Variable Setup + #---null_slide vars + nullStrength = 0 carAngle = get_node("../../../CarBody").get_transform().get_rotation() - carVector = Vector2(cos(carAngle + PI/2),sin(carAngle + PI/2)) velVector = get_node("../../../CarBody").get_linear_velocity() velocity = measure_velocity() - isForward = is_forward() + #--- set_rotation(carAngle) - -# gripDelay = has_grip(0.4,delta) isSkid = Input.is_action_pressed("grip") if Input.is_action_pressed("grip") || Input.is_action_pressed("brake"): - null_slide(max(5,velocity/7),delta) + nullStrength += max(5,velocity/7) else: - null_slide(1,delta) + nullStrength += 1 + #Braking - if Input.is_action_pressed("brake"): - if velocity > 20: - linear_damp = 2 - else: - linear_damp = 5 - else: - linear_damp = 0.01 + setBrake(0) + null_slide(nullStrength, delta) if Input.is_action_pressed("forward"): @@ -56,46 +42,9 @@ func _process(delta): else: pass -#Core physics, stops sliding sideways and make car roll forwards -func null_slide(var strength, var delta): - #strength is how strong you would like the nullify to be - #higher is less sliding/drifting - var movementUnitVector = get_linear_velocity().normalized()#the direction of the velocity - var directionAngle = carAngle + (PI/2.0)#the angle the car is facing(relative to the world) - var directionUnitVector = Vector2(cos(directionAngle),sin(directionAngle)).normalized()#the direction the car is facing - var nullify = directionUnitVector * movementUnitVector.dot(directionUnitVector) - var wheelSlip = (-(movementUnitVector - nullify))*strength - apply_central_impulse(wheelSlip*delta*5000) - -#func has_grip(var tractionDelay, var delta): -# var movementUnitVector = get_linear_velocity().normalized()#the direction of the velocity -# var directionAngle = carAngle#the angle the car is facing(relative to the world) -# var directionUnitVector = Vector2(cos(directionAngle),sin(directionAngle)).normalized()#the direction the car is facing -# if velocity > 10: -# if Input.is_action_pressed("grip"):##if pressing shift -# gripDelay = tractionDelay -# elif (gripDelay <= 0 && abs(movementUnitVector.dot(directionUnitVector)) > 0.4):#if not drifting but past steering point -# gripDelay = tractionDelay -# elif gripDelay > 0 && abs(movementUnitVector.dot(directionUnitVector)) > 0.3:#if drifting and past steering point -# gripDelay = tractionDelay -# elif gripDelay > 0:#if at recovery point and drifting -# gripDelay -= delta -# else: -# gripDelay = 0 -# return gripDelay - func measure_velocity(): return sqrt(get_linear_velocity().dot(get_linear_velocity()))/12 - -#determines if the car is driving forward, or backward -func is_forward(): - carVector = Vector2(cos(carAngle + PI/2),sin(carAngle + PI/2)) - if velVector == Vector2(0,0) || carVector == Vector2(0,0): - return true - if velVector.dot(carVector) <= 0: - return true - else: - return false + func gear(var rpm, var maxPower, var topSpeed): return max(-pow((rpm/((1000/topSpeed)/sqrt(maxPower)))-sqrt(maxPower),2)+(maxPower+1),0) |
