Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found

Target

Select target project
  • KartKrew/RingRacers
  • bitten2up/RingRacers
  • X.organic/RingRacers
  • StarManiaKG/the-story-of-subsequent-tutorials-and-dance-dance-revolutions-remastered-rocking-the-4th
  • LoganAir/RingRacers
  • Hanicef/RingRacers
  • aa/RingRacers
  • JugadorXEI/RingRacers
  • Jisk/RingRacers
  • Callmore/RingRacers
  • Lugent/RingRacers
  • Chopp/ring-racers-cope
  • tertu/RingRacers
  • lavla/RingRacers
  • Snu/RingRacers
  • Zwip-Zwap_Zapony/RingRacers
  • haya_/RingRacers
  • Lactozilla/RingRacers
  • SMS_Alfredo/RingRacers
  • spectrumuk2/RingRacers
  • vanhouc/RingRacers
  • diskpoppy/RingRacers
  • kingofmemes2401g/ring-racers-kings-fork
  • LatiusAuro/RingRacers
  • Guil/RingRacers
  • Chearii/RingRacers
  • EeveeEuphoria/RingRacers
  • kimmy/RingRacers
  • spazzylemons/RingRacers
  • brosasaki/RingRacers
  • wehrlia/RingRacers
  • MightyMcTopher/RingRacers
  • FreakyMutantMan/RingRacers
  • troy236/RingRacers
  • Craftyawesome/RingRacers
  • NepDisk/RingRacers
  • alufolie91/RingRacers
  • bird/RingRacers
  • PencilVoid/RingRacers
  • Superstarxalien/RingRacers
  • WTF/RingRacers
  • Lach/RingRacers
  • frostu8/RingRacers
  • Benji_Menji/RingRacers
  • Dr_Nope/RingRacers
  • Nep2Disk/RingRacers
  • Lighto97/RingRacers
  • lostromb/RingRacers
  • luigi-budd/RingRacers
49 results
Show changes
Commits on Source (3)
......@@ -848,8 +848,10 @@ extern tic_t setup_animcounter;
// for charsel pages.
extern UINT8 setup_page;
extern UINT8 setup_maxpage;
extern UINT8 rsel_randomsound;
#define CSROTATETICS 6
#define RSELDELAYTICS 5
// The selection spawns 3 explosions in 4 directions, and there's 4 players -- 3 * 4 * 4 = 48
#define CSEXPLOSIONS 48
......@@ -876,6 +878,7 @@ boolean M_CharacterSelectForceInAction(void);
boolean M_CharacterSelectHandler(INT32 choice);
void M_CharacterSelectTick(void);
boolean M_CharacterSelectQuit(void);
sfxenum_t M_RandomSelectSound(INT32 choice);
void M_SetupPlayMenu(INT32 choice);
void M_SetupGametypeMenu(INT32 choice);
......
......@@ -2473,7 +2473,10 @@ void M_DrawCharacterSelect(void)
V_DrawThinString((x += kButtonWidth), kTop, 0, "Info");
}
K_drawButton((x += 58) * FRACUNIT, (kTop - 1) * FRACUNIT, 0, kp_button_c[1], M_MenuButtonPressed(pid, MBT_C));
K_drawButton((x += 21) * FRACUNIT, (kTop - 1) * FRACUNIT, 0, kp_button_z[1], M_MenuButtonHeld(pid, MBT_Z));
V_DrawThinString((x += kButtonWidth), kTop, 0, "Random");
K_drawButton((x += 32) * FRACUNIT, (kTop - 1) * FRACUNIT, 0, kp_button_c[1], M_MenuButtonPressed(pid, MBT_C));
V_DrawThinString((x += kButtonWidth), kTop, 0, "Default");
}
......
......@@ -20,6 +20,7 @@
#include "../m_cond.h" // Condition Sets
#include "../k_color.h"
#include "../z_zone.h"
#include "../m_random.h"
//#define CHARSELECT_DEVICEDEBUG
......@@ -74,6 +75,7 @@ tic_t setup_animcounter = 0;
UINT8 setup_page = 0;
UINT8 setup_maxpage = 0; // For charsel page to identify alts easier...
UINT8 rsel_randomsound = 1; //For M_RandomSelectSound
static void M_PushMenuColor(setup_player_colors_t *colors, UINT16 newColor)
{
......@@ -790,6 +792,9 @@ static boolean M_HandleCharacterGrid(setup_player_t *p, UINT8 num)
UINT8 numclones;
INT32 skin;
boolean forceskin = M_CharacterSelectForceInAction();
boolean rsel_slotcheck = false;
UINT8 rsel_x = 0;
UINT8 rsel_y = 0;
if (cv_splitdevice.value)
num = 0;
......@@ -846,8 +851,29 @@ static boolean M_HandleCharacterGrid(setup_player_t *p, UINT8 num)
if (p->clonenum >= numclones)
p->clonenum = 0;
if (M_MenuConfirmPressed(num) /*|| M_MenuButtonPressed(num, MBT_START)*/)
if (M_MenuButtonHeld(num, MBT_Z))
{
do
{
rsel_x = M_RandomRange(0, 8);
rsel_y = M_RandomRange(0, 8);
if (setup_chargrid[rsel_x][rsel_y].numskins >= 1)
{
rsel_slotcheck = true;
}
else
{
rsel_slotcheck = false;
}
}while(!rsel_slotcheck);
p->gridx = rsel_x;
p->gridy = rsel_y;
p->delay = RSELDELAYTICS;
S_StartSound(NULL, M_RandomSelectSound(0));
M_SetMenuDelay(num);
}
if (M_MenuConfirmPressed(num) || (M_MenuConfirmHeld(num) && M_MenuButtonHeld(num, MBT_Z)) /*|| M_MenuButtonPressed(num, MBT_START)*/)
{
if (forceskin)
{
......@@ -903,6 +929,7 @@ static boolean M_HandleCharacterGrid(setup_player_t *p, UINT8 num)
M_SetMenuDelay(num);
}
if (num == 0 && setup_numplayers == 1 && setup_maxpage && !forceskin) // ONLY one player.
{
if (M_MenuButtonPressed(num, MBT_L))
......@@ -945,8 +972,16 @@ static void M_HandleCharRotate(setup_player_t *p, UINT8 num)
p->delay = CSROTATETICS;
S_StartSound(NULL, sfx_s3kc3s);
}
if (M_MenuConfirmPressed(num) /*|| M_MenuButtonPressed(num, MBT_START)*/)
if (M_MenuButtonHeld(num, MBT_Z))
{
p->clonenum = M_RandomRange(0, (numclones-1));
p->rotate = -CSROTATETICS;
p->delay = RSELDELAYTICS;
S_StartSound(NULL, M_RandomSelectSound(0));
M_SetMenuDelay(num);
}
if (M_MenuConfirmPressed(num) || (M_MenuConfirmHeld(num) && M_MenuButtonHeld(num, MBT_Z)) /*|| M_MenuButtonPressed(num, MBT_START)*/)
{
M_HandleBeginningColorsOrFollowers(p);
M_SetMenuDelay(num);
......@@ -968,7 +1003,9 @@ static void M_HandleCharRotate(setup_player_t *p, UINT8 num)
}
static void M_HandleColorRotate(setup_player_t *p, UINT8 num)
{
{
UINT8 randomcol = 0;
if (cv_splitdevice.value)
num = 0;
......@@ -986,8 +1023,17 @@ static void M_HandleColorRotate(setup_player_t *p, UINT8 num)
M_SetMenuDelay(num); //CSROTATETICS
S_StartSound(NULL, sfx_s3k5b); //sfx_s3kc3s
}
if (M_MenuConfirmPressed(num) /*|| M_MenuButtonPressed(num, MBT_START)*/)
if (M_MenuButtonHeld(num, MBT_Z))
{
randomcol = M_RandomRange(-512, 512);
p->color = M_GetColorAfter(&p->colors, p->color, randomcol);
p->rotate = CSROTATETICS;
p->delay = RSELDELAYTICS;
M_SetMenuDelay(num); //CSROTATETICS
S_StartSound(NULL, M_RandomSelectSound(0)); //sfx_s3kc3s
}
if (M_MenuConfirmPressed(num) || (M_MenuConfirmHeld(num) && M_MenuButtonHeld(num, MBT_Z)) /*|| M_MenuButtonPressed(num, MBT_START)*/)
{
M_HandleBeginningFollowers(p);
M_SetMenuDelay(num);
......@@ -1065,8 +1111,15 @@ static void M_HandleFollowerCategoryRotate(setup_player_t *p, UINT8 num)
p->delay = CSROTATETICS;
S_StartSound(NULL, sfx_s3kc3s);
}
if (M_MenuConfirmPressed(num) /*|| M_MenuButtonPressed(num, MBT_START)*/)
if (M_MenuButtonHeld(num, MBT_Z))
{
p->followercategory = M_RandomRange(0, setup_numfollowercategories-1);
p->rotate = CSROTATETICS;
p->delay = RSELDELAYTICS;
S_StartSound(NULL, M_RandomSelectSound(0));
}
if (M_MenuConfirmPressed(num) || (M_MenuConfirmHeld(num) && M_MenuButtonHeld(num, MBT_Z)) /*|| M_MenuButtonPressed(num, MBT_START)*/)
{
if (p->followercategory < 0)
{
......@@ -1167,8 +1220,26 @@ static void M_HandleFollowerRotate(setup_player_t *p, UINT8 num)
p->delay = CSROTATETICS;
S_StartSound(NULL, sfx_s3kc3s);
}
if (M_MenuButtonHeld(num, MBT_Z))
{
do
{
p->followern = M_RandomRange(0, numfollowers-1);
if (p->followern < 0)
p->followern = numfollowers-1;
if (p->followern == startfollowern)
break;
}
while (followers[p->followern].category != setup_followercategories[p->followercategory][1] || !K_FollowerUsable(p->followern));
if (M_MenuConfirmPressed(num) /*|| M_MenuButtonPressed(num, MBT_START)*/)
M_GetFollowerState(p);
p->rotate = CSROTATETICS;
p->delay = RSELDELAYTICS;
S_StartSound(NULL, M_RandomSelectSound(0));
}
if (M_MenuConfirmPressed(num) || (M_MenuConfirmHeld(num) && M_MenuButtonHeld(num, MBT_Z)) /*|| M_MenuButtonPressed(num, MBT_START)*/)
{
if (p->followern > -1)
{
......@@ -1204,6 +1275,9 @@ static void M_HandleFollowerRotate(setup_player_t *p, UINT8 num)
static void M_HandleFollowerColorRotate(setup_player_t *p, UINT8 num)
{
UINT8 randomcol = 0;
UINT8 randomsound = 1;
if (cv_splitdevice.value)
num = 0;
......@@ -1221,8 +1295,18 @@ static void M_HandleFollowerColorRotate(setup_player_t *p, UINT8 num)
M_SetMenuDelay(num); //CSROTATETICS
S_StartSound(NULL, sfx_s3k5b); //sfx_s3kc3s
}
if (M_MenuConfirmPressed(num) /*|| M_MenuButtonPressed(num, MBT_START)*/)
if (M_MenuButtonHeld(num, MBT_Z))
{
randomcol = M_RandomRange(-512, 512);
p->followercolor = M_GetColorAfter(&p->colors, p->followercolor, randomcol);
p->rotate = -CSROTATETICS;
p->delay = RSELDELAYTICS;
M_SetMenuDelay(num); //CSROTATETICS
randomsound++;
S_StartSound(NULL, M_RandomSelectSound(0)); //sfx_s3kc3s
}
if (M_MenuConfirmPressed(num) || (M_MenuConfirmHeld(num) && M_MenuButtonHeld(num, MBT_Z)) /*|| M_MenuButtonPressed(num, MBT_START)*/)
{
M_HandlePlayerFinalise(p);
M_SetMenuDelay(num);
......@@ -1249,6 +1333,52 @@ static void M_HandleFollowerColorRotate(setup_player_t *p, UINT8 num)
}
}
sfxenum_t M_RandomSelectSound (INT32 choice)
{
(void)choice;
sfxenum_t chosensound = sfx_itrol1;
switch (rsel_randomsound)
{
case 0:
case 1:
rsel_randomsound++;
chosensound = sfx_itrol1;
break;
case 2:
rsel_randomsound++;
chosensound = sfx_itrol2;
break;
case 3:
rsel_randomsound++;
chosensound = sfx_itrol3;
break;
case 4:
rsel_randomsound++;
chosensound = sfx_itrol4;
break;
case 5:
rsel_randomsound++;
chosensound = sfx_itrol5;
break;
case 6:
rsel_randomsound++;
chosensound = sfx_itrol6;
break;
case 7:
rsel_randomsound++;
chosensound = sfx_itrol7;
break;
case 8:
rsel_randomsound = 1;
chosensound = sfx_itrol8;
break;
default:
rsel_randomsound = 2;
chosensound = sfx_itrol1;
}
return chosensound;
}
boolean M_CharacterSelectHandler(INT32 choice)
{
INT32 i;
......