mirror of
https://git.do.srb2.org/KartKrew/Kart-Public.git
synced 2025-02-20 19:02:37 +00:00
Item Throw distance/height experimentation
This commit is contained in:
parent
b9f6a91c37
commit
a00123e663
1 changed files with 9 additions and 12 deletions
21
src/k_kart.c
21
src/k_kart.c
|
@ -1920,13 +1920,13 @@ static mobj_t *K_ThrowKartItem(player_t *player, boolean missile, mobjtype_t map
|
|||
switch (cv_kartcc.value)
|
||||
{
|
||||
case 50:
|
||||
PROJSPEED = 85*FRACUNIT; // Avg Speed is 34
|
||||
PROJSPEED = 40*FRACUNIT; // Avg Speed is 34
|
||||
break;
|
||||
case 150:
|
||||
PROJSPEED = 120*FRACUNIT; // Avg Speed is 48
|
||||
PROJSPEED = 60*FRACUNIT; // Avg Speed is 48
|
||||
break;
|
||||
default:
|
||||
PROJSPEED = 102*FRACUNIT+FRACUNIT/2; // Avg Speed is 41
|
||||
PROJSPEED = 50*FRACUNIT; // Avg Speed is 41
|
||||
break;
|
||||
}
|
||||
|
||||
|
@ -2029,7 +2029,7 @@ static mobj_t *K_ThrowKartItem(player_t *player, boolean missile, mobjtype_t map
|
|||
if (dir == 1 || dir == 2)
|
||||
{
|
||||
// Shoot forward
|
||||
mo = P_SpawnMobj(player->mo->x, player->mo->y, player->mo->z + 80*FRACUNIT, mapthing);
|
||||
mo = P_SpawnMobj(player->mo->x, player->mo->y, player->mo->z + player->mo->height/2, mapthing);
|
||||
|
||||
mo->threshold = 10;
|
||||
|
||||
|
@ -2043,22 +2043,19 @@ static mobj_t *K_ThrowKartItem(player_t *player, boolean missile, mobjtype_t map
|
|||
INT32 HEIGHT;
|
||||
|
||||
if (dir == 2)
|
||||
HEIGHT = 16*FRACUNIT + player->mo->momz;
|
||||
HEIGHT = 30*FRACUNIT + player->mo->momz;
|
||||
else
|
||||
HEIGHT = 8*FRACUNIT + player->mo->momz;
|
||||
HEIGHT = 20*FRACUNIT + player->mo->momz;
|
||||
|
||||
if (HEIGHT > 64*FRACUNIT)
|
||||
HEIGHT = 64*FRACUNIT;
|
||||
|
||||
mo->momx = FixedMul(FINECOSINE(fa), PROJSPEED);
|
||||
mo->momy = FixedMul(FINESINE(fa), PROJSPEED);
|
||||
mo->momx = player->mo->momx + FixedMul(FINECOSINE(fa), PROJSPEED);
|
||||
mo->momy = player->mo->momy + FixedMul(FINESINE(fa), PROJSPEED);
|
||||
mo->momz = HEIGHT;
|
||||
|
||||
if (player->mo->eflags & MFE_VERTICALFLIP)
|
||||
mo->eflags |= MFE_VERTICALFLIP;
|
||||
}
|
||||
|
||||
mobj_t *throwmo = P_SpawnMobj(player->mo->x, player->mo->y, player->mo->z + 80*FRACUNIT, MT_FIREDITEM);
|
||||
mobj_t *throwmo = P_SpawnMobj(player->mo->x, player->mo->y, player->mo->z + player->mo->height/2, MT_FIREDITEM);
|
||||
P_SetTarget(&throwmo->target, player->mo);
|
||||
throwmo->movecount = 0; // above player
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue