From 123fa9b59ef8f9912c39d3613ba374b5260f9657 Mon Sep 17 00:00:00 2001 From: Hourier <66951241+Hourier@users.noreply.github.com> Date: Thu, 16 Sep 2021 22:49:39 +0900 Subject: [PATCH] [Refactor] #1498 Defined StunRank and get_rank() --- src/timed-effect/player-stun.cpp | 24 +++++++++++++++++++++++- src/timed-effect/player-stun.h | 11 ++++++++++- 2 files changed, 33 insertions(+), 2 deletions(-) diff --git a/src/timed-effect/player-stun.cpp b/src/timed-effect/player-stun.cpp index 0ba377859..0d3f48223 100644 --- a/src/timed-effect/player-stun.cpp +++ b/src/timed-effect/player-stun.cpp @@ -1,10 +1,32 @@ #include "timed-effect/player-stun.h" -short PlayerStun::current() +short PlayerStun::current() const { return this->stun; } +StunRank PlayerStun::get_rank() const +{ + return this->get_rank(this->stun); +} + +StunRank PlayerStun::get_rank(short value) const +{ + if (value > 100) { + return StunRank::UNCONSCIOUS; + } + + if (value > 50) { + return StunRank::HARD; + } + + if (value > 0) { + return StunRank::NORMAL; + } + + return StunRank::NONE; +} + void PlayerStun::set(short value) { } diff --git a/src/timed-effect/player-stun.h b/src/timed-effect/player-stun.h index 71291a465..251ec09d0 100644 --- a/src/timed-effect/player-stun.h +++ b/src/timed-effect/player-stun.h @@ -1,11 +1,20 @@ #pragma once +enum class StunRank { + NONE = 0, + NORMAL = 1, + HARD = 2, + UNCONSCIOUS = 3, +}; + class PlayerStun { public: PlayerStun() = default; virtual ~PlayerStun() = default; - short current(); + short current() const; + StunRank get_rank() const; + StunRank get_rank(short value) const; void set(short value); private: -- 2.11.0