working player death animation
This commit is contained in:
		
							parent
							
								
									5bd5a35d88
								
							
						
					
					
						commit
						723d677a81
					
				| @ -18,8 +18,9 @@ func resetPlayer(): | |||||||
| 	player.health = player.max_health | 	player.health = player.max_health | ||||||
| 
 | 
 | ||||||
| func playerDamage(): | func playerDamage(): | ||||||
|  | 	if player.health >0: | ||||||
| 		player.health -= 20 | 		player.health -= 20 | ||||||
| 	print("Player health is : "+str(player.health) ) | 	 | ||||||
| 	#is the player dead? | 	#is the player dead? | ||||||
| 	if player.health <= 0: | 	if player.health <= 0: | ||||||
| 		#kill him | 		#kill him | ||||||
|  | |||||||
| @ -6,6 +6,8 @@ const JUMP_VELOCITY = -400.0 | |||||||
| const PUSH_FORCE = 700 | const PUSH_FORCE = 700 | ||||||
| 
 | 
 | ||||||
| var faceLeft = false | var faceLeft = false | ||||||
|  | var living = true | ||||||
|  | 
 | ||||||
| # can i push right or left | # can i push right or left | ||||||
| var pushLeftEnabled = false | var pushLeftEnabled = false | ||||||
| var pushRightEnabled = false | var pushRightEnabled = false | ||||||
| @ -21,10 +23,13 @@ var bullet = preload("res://scenes/bullet.tscn") | |||||||
| 
 | 
 | ||||||
| func killPlayer(): | func killPlayer(): | ||||||
| 	print("kill the player") | 	print("kill the player") | ||||||
|  | 	if living: | ||||||
|  | 		living = false | ||||||
| 		#play death animation | 		#play death animation | ||||||
| 		playerSprite.play("death") | 		playerSprite.play("death") | ||||||
| 	 | 	 | ||||||
| func _physics_process(delta: float) -> void: | func _physics_process(delta: float) -> void: | ||||||
|  | 	if living: | ||||||
| 		# Add the gravity. | 		# Add the gravity. | ||||||
| 		if not is_on_floor(): | 		if not is_on_floor(): | ||||||
| 			velocity += get_gravity() * delta | 			velocity += get_gravity() * delta | ||||||
| @ -34,26 +39,19 @@ func _physics_process(delta: float) -> void: | |||||||
| 			velocity.y = JUMP_VELOCITY | 			velocity.y = JUMP_VELOCITY | ||||||
| 		 | 		 | ||||||
| 		if Input.is_action_just_pressed("Shove") && pushLeftEnabled && faceLeft: | 		if Input.is_action_just_pressed("Shove") && pushLeftEnabled && faceLeft: | ||||||
| 		print("shove a box on the left") |  | ||||||
| 			pushTarget.apply_central_impulse(Vector2(-1,0) * PUSH_FORCE * 1.5) | 			pushTarget.apply_central_impulse(Vector2(-1,0) * PUSH_FORCE * 1.5) | ||||||
| 			pushLeftEnabled = false | 			pushLeftEnabled = false | ||||||
| 			 | 			 | ||||||
| 		if Input.is_action_just_pressed("Shove") && pushRightEnabled && not faceLeft: | 		if Input.is_action_just_pressed("Shove") && pushRightEnabled && not faceLeft: | ||||||
| 		print("shove a box on the right") |  | ||||||
| 			pushTarget.apply_central_impulse(Vector2(1,0) * PUSH_FORCE * 1.5) | 			pushTarget.apply_central_impulse(Vector2(1,0) * PUSH_FORCE * 1.5) | ||||||
| 			pushRightEnabled=false | 			pushRightEnabled=false | ||||||
| 		 | 		 | ||||||
| 		if Input.is_action_just_pressed("shoot"): | 		if Input.is_action_just_pressed("shoot"): | ||||||
| 		 |  | ||||||
| 
 |  | ||||||
| 		 |  | ||||||
| 			if faceLeft: | 			if faceLeft: | ||||||
| 			print("shoot left") |  | ||||||
| 				# mybullet.setSpeed(-700) | 				# mybullet.setSpeed(-700) | ||||||
| 				#mybullet.transform = marker_left.global_transform | 				#mybullet.transform = marker_left.global_transform | ||||||
| 				%SceneManager.placeBullet(-700, marker_left.global_transform) | 				%SceneManager.placeBullet(-700, marker_left.global_transform) | ||||||
| 			else: | 			else: | ||||||
| 			print("shoot right") |  | ||||||
| 				#mybullet.transform = marker_right.global_transform | 				#mybullet.transform = marker_right.global_transform | ||||||
| 				%SceneManager.placeBullet(700, marker_right.global_transform) | 				%SceneManager.placeBullet(700, marker_right.global_transform) | ||||||
| 
 | 
 | ||||||
| @ -71,6 +69,7 @@ func _physics_process(delta: float) -> void: | |||||||
| 			velocity.x = direction * SPEED | 			velocity.x = direction * SPEED | ||||||
| 		else: | 		else: | ||||||
| 			velocity.x = move_toward(velocity.x, 0, SPEED) | 			velocity.x = move_toward(velocity.x, 0, SPEED) | ||||||
|  | 		 | ||||||
| 		if is_on_floor(): | 		if is_on_floor(): | ||||||
| 			if direction == 0: | 			if direction == 0: | ||||||
| 				playerSprite.play("idle") | 				playerSprite.play("idle") | ||||||
| @ -86,7 +85,6 @@ func _physics_process(delta: float) -> void: | |||||||
| 				c.get_collider().apply_central_impulse(-c.get_normal()* 100) | 				c.get_collider().apply_central_impulse(-c.get_normal()* 100) | ||||||
| 		 | 		 | ||||||
| 		if left_ray.is_colliding(): | 		if left_ray.is_colliding(): | ||||||
| 		print("left ray collision") |  | ||||||
| 			var collider = left_ray.get_collider() | 			var collider = left_ray.get_collider() | ||||||
| 			if collider is Node: | 			if collider is Node: | ||||||
| 				if collider.is_in_group("pushables"): | 				if collider.is_in_group("pushables"): | ||||||
| @ -97,7 +95,6 @@ func _physics_process(delta: float) -> void: | |||||||
| 			pushLeftEnabled = false | 			pushLeftEnabled = false | ||||||
| 			 | 			 | ||||||
| 		if right_ray.is_colliding(): | 		if right_ray.is_colliding(): | ||||||
| 		print("right ray collision") |  | ||||||
| 			var collider = right_ray.get_collider() | 			var collider = right_ray.get_collider() | ||||||
| 			if collider is Node: | 			if collider is Node: | ||||||
| 				if collider.is_in_group("pushables"): | 				if collider.is_in_group("pushables"): | ||||||
|  | |||||||
| @ -66,7 +66,8 @@ func crateFactory(): | |||||||
| func killPlayer(): | func killPlayer(): | ||||||
| 	print("kill the player now") | 	print("kill the player now") | ||||||
| 	player.killPlayer() | 	player.killPlayer() | ||||||
| 	timer.start(3) | 	if timer.is_stopped(): | ||||||
|  | 		timer.start(4) | ||||||
| 	 | 	 | ||||||
| 
 | 
 | ||||||
| func resetWorld(): | func resetWorld(): | ||||||
|  | |||||||
		Loading…
	
		Reference in New Issue
	
	Block a user