feat: added damage function to player
This commit is contained in:
		
							parent
							
								
									80270546e0
								
							
						
					
					
						commit
						5bb287252c
					
				|  | @ -1,4 +1,6 @@ | |||
| #include "car_player.hpp" | ||||
| #include "rally_rush_game_mode.hpp" | ||||
| #include "utils/game_root.hpp" | ||||
| #include "utils/player_input.hpp" | ||||
| #include <godot_cpp/variant/transform3d.hpp> | ||||
| #include <godot_cpp/classes/physics_direct_body_state3d.hpp> | ||||
|  | @ -19,6 +21,8 @@ void CarPlayer::spawn_at_position(Transform3D const &transform) { | |||
|     this->set_scale({1,1,1}); | ||||
| } | ||||
| 
 | ||||
| Node *CarPlayer::to_node() { return this; } | ||||
| 
 | ||||
| void CarPlayer::on_steer(Ref<InputEvent> event, float value) { | ||||
|     this->set_current_steering(value * this->steering_factor); | ||||
| } | ||||
|  | @ -31,5 +35,11 @@ void CarPlayer::on_accelerate(Ref<InputEvent> input, float value) { | |||
|     this->set_target_speed(max_speed * value); | ||||
| } | ||||
| 
 | ||||
| Node *CarPlayer::to_node() { return this; } | ||||
| void CarPlayer::damage() { | ||||
|     --this->health; | ||||
|     if(this->health <= 0) { | ||||
|         RallyRushGameMode *game_mode = Ref<RallyRushGameMode>(GameRoot3D::get_singleton()->get_game_mode()).ptr(); | ||||
|         game_mode->notify_player_death(); | ||||
|     } | ||||
| } | ||||
| } | ||||
|  |  | |||
|  | @ -20,8 +20,10 @@ public: | |||
|     void on_steer(Ref<InputEvent> event, float value); | ||||
|     void on_brake(Ref<InputEvent> event, float value); | ||||
|     void on_accelerate(Ref<InputEvent> event, float value); | ||||
| 
 | ||||
|     void damage(); | ||||
| private: | ||||
|     int health{0}; | ||||
|     int health{1}; | ||||
| 
 | ||||
|     const float max_speed{40.f}; | ||||
|     const float max_speed_reverse{10.f}; | ||||
|  |  | |||
		Loading…
	
		Reference in a new issue
	
	 Sara
						Sara