diff options
| author | Nguyễn Gia Phong <mcsinyx@disroot.org> | 2022-02-17 15:55:04 +0700 |
|---|---|---|
| committer | Nguyễn Gia Phong <mcsinyx@disroot.org> | 2022-02-17 15:55:04 +0700 |
| commit | 52ce0c4884a8abc5125bd2498e0018bc7b8577f2 (patch) | |
| tree | 7d84347b6c80b75f610b0aaa9cab45d9d8bb6757 /src/GameTick.cpp | |
| parent | 2c44d2e60bb83d333b7d80c935f9578b4f11522a (diff) | |
| download | blackshades-52ce0c4884a8abc5125bd2498e0018bc7b8577f2.tar.gz | |
Move recoil handling to own function
Diffstat (limited to 'src/GameTick.cpp')
| -rw-r--r-- | src/GameTick.cpp | 83 |
1 files changed, 44 insertions, 39 deletions
diff --git a/src/GameTick.cpp b/src/GameTick.cpp index 3c44bdb..64d8614 100644 --- a/src/GameTick.cpp +++ b/src/GameTick.cpp @@ -753,6 +753,49 @@ void renderBloodSprite(Game* game, size_t i) {}, person.bleeding * 3.0f); } +void recoil(Game* game, size_t i) +{ + auto& person = game->person[i]; + switch (person.type) { + case playertype: + switch (person.whichgun) { + case shotgun: + person.recoil -= multiplier * 4; + break; + case sniperrifle: + person.recoil -= multiplier * 2; + break; + case handgun1: + case handgun2: + person.recoil -= multiplier * 5; + break; + case assaultrifle: + person.recoil -= multiplier * 10; + break; + } + if (!person.aiming || visions) + game->zoom = false; + break; + case eviltype: + switch (person.whichgun) { + case shotgun: + case sniperrifle: + person.recoil -= multiplier * 1; + break; + case handgun1: + case handgun2: + person.recoil -= multiplier * 2; + break; + case assaultrifle: + person.recoil -= multiplier * 10; + break; + } + break; + } + if (person.recoil < 0) + person.recoil = 0; +} + void renderLaser(Game* game) { auto& player = game->person[0]; @@ -969,45 +1012,7 @@ void Game::Tick() renderBloodSprite(this, i); if (!person[i].skeleton.free) { - // Gun - switch (person[i].type) { - case playertype: - switch (person[i].whichgun) { - case shotgun: - person[i].recoil -= multiplier * 4; - break; - case sniperrifle: - person[i].recoil -= multiplier * 2; - break; - case handgun1: - case handgun2: - person[i].recoil -= multiplier * 5; - break; - case assaultrifle: - person[i].recoil-=multiplier * 10; - break; - } - if (!person[0].aiming || visions) - this->zoom = false; - break; - case eviltype: - switch (person[i].whichgun) { - case shotgun: - case sniperrifle: - person[i].recoil -= multiplier * 1; - break; - case handgun1: - case handgun2: - person[i].recoil -= multiplier * 2; - break; - case assaultrifle: - person[i].recoil-=multiplier * 10; - break; - } - break; - } - if (person[i].recoil < 0) - person[i].recoil = 0; + recoil(this, i); //Zombie eat if(i > 0 |
