Menu: Added some fancy menu guff, enjoy it while it lasts
This commit is contained in:
parent
01364e488d
commit
576547f249
7 changed files with 48 additions and 9 deletions
|
@ -14,7 +14,7 @@
|
||||||
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
var int autocvar_menu_intro = FALSE;
|
var int autocvar_menu_intro = TRUE;
|
||||||
|
|
||||||
#define KEY_UNKNOWN -1
|
#define KEY_UNKNOWN -1
|
||||||
#define KEY_GAME 0
|
#define KEY_GAME 0
|
||||||
|
|
|
@ -81,6 +81,10 @@ void m_init(void)
|
||||||
Colors_Init();
|
Colors_Init();
|
||||||
Strings_Init();
|
Strings_Init();
|
||||||
g_initialized = TRUE;
|
g_initialized = TRUE;
|
||||||
|
|
||||||
|
if (cvar_string("game") != "valve") {
|
||||||
|
m_intro_skip();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void m_shutdown(void)
|
void m_shutdown(void)
|
||||||
|
@ -206,6 +210,7 @@ float m_consolecommand(string cmd)
|
||||||
switch (argv(0)) {
|
switch (argv(0)) {
|
||||||
case "menu_customgame":
|
case "menu_customgame":
|
||||||
g_menupage = PAGE_CUSTOMGAME;
|
g_menupage = PAGE_CUSTOMGAME;
|
||||||
|
m_intro_skip();
|
||||||
break;
|
break;
|
||||||
case "togglemenu":
|
case "togglemenu":
|
||||||
m_display();
|
m_display();
|
||||||
|
|
|
@ -35,6 +35,7 @@ void create_btnok_start(void)
|
||||||
{
|
{
|
||||||
static string startmap;
|
static string startmap;
|
||||||
static void create_btnok_end(void) {
|
static void create_btnok_end(void) {
|
||||||
|
localcmd("stopmusic\n");
|
||||||
localcmd(sprintf("hostname %s\n", create_tbHostname.m_text));
|
localcmd(sprintf("hostname %s\n", create_tbHostname.m_text));
|
||||||
localcmd(sprintf("sv_playerslots %s\n", create_tbMaxplayers.m_text));
|
localcmd(sprintf("sv_playerslots %s\n", create_tbMaxplayers.m_text));
|
||||||
localcmd(sprintf("password %s\n", create_tbPassword.m_text));
|
localcmd(sprintf("password %s\n", create_tbPassword.m_text));
|
||||||
|
|
|
@ -23,6 +23,7 @@ void createinet_btnok_start(void)
|
||||||
{
|
{
|
||||||
static string startmap;
|
static string startmap;
|
||||||
static void createinet_btnok_end(void) {
|
static void createinet_btnok_end(void) {
|
||||||
|
localcmd("stopmusic\n");
|
||||||
localcmd(sprintf("hostname %s\n", create_tbHostname.m_text));
|
localcmd(sprintf("hostname %s\n", create_tbHostname.m_text));
|
||||||
localcmd(sprintf("sv_playerslots %s\n", create_tbMaxplayers.m_text));
|
localcmd(sprintf("sv_playerslots %s\n", create_tbMaxplayers.m_text));
|
||||||
localcmd(sprintf("password %s\n", create_tbPassword.m_text));
|
localcmd(sprintf("password %s\n", create_tbPassword.m_text));
|
||||||
|
|
|
@ -14,20 +14,47 @@
|
||||||
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#define INTRO_TIME 6
|
enum {
|
||||||
|
INTRO_START,
|
||||||
|
INTRO_FADETOWHITE,
|
||||||
|
INTRO_FADETOMENU,
|
||||||
|
INTRO_DONE
|
||||||
|
};
|
||||||
|
|
||||||
|
#define INTRO_TIME 8
|
||||||
float g_intro_progress;
|
float g_intro_progress;
|
||||||
|
int g_intro_stage;
|
||||||
|
|
||||||
|
void m_intro_skip(void)
|
||||||
|
{
|
||||||
|
g_intro_progress = INTRO_TIME;
|
||||||
|
}
|
||||||
|
|
||||||
void m_intro_draw(void)
|
void m_intro_draw(void)
|
||||||
{
|
{
|
||||||
|
|
||||||
if (clientstate() == 2) {
|
if (clientstate() == 2) {
|
||||||
g_intro_progress = INTRO_TIME;
|
g_intro_progress = INTRO_TIME;
|
||||||
|
g_intro_stage = INTRO_DONE;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (g_intro_progress > 5.0f) {
|
if (g_intro_progress > 7.0f) {
|
||||||
|
float alpha = (8 - g_intro_progress);
|
||||||
|
drawfill([0,0], [g_vidsize[0],g_vidsize[1]], [1,1,1], alpha);
|
||||||
|
|
||||||
|
if (g_intro_stage != INTRO_FADETOMENU) {
|
||||||
|
g_intro_stage = INTRO_FADETOMENU;
|
||||||
|
}
|
||||||
|
} else if (g_intro_progress > 5.0f) {
|
||||||
float alpha = (6 - g_intro_progress);
|
float alpha = (6 - g_intro_progress);
|
||||||
drawpic([g_menuofs[0],g_menuofs[1]], g_bmp[SPLASH8BIT],
|
drawpic([g_menuofs[0],g_menuofs[1]], g_bmp[SPLASH8BIT],
|
||||||
[640,480], [1,1,1], alpha, 0);
|
[640,480], [1,1,1], 1.0f, 0);
|
||||||
|
drawfill([0,0], [g_vidsize[0],g_vidsize[1]], [1,1,1], 1.0 - alpha);
|
||||||
|
|
||||||
|
if (g_intro_stage != INTRO_FADETOWHITE) {
|
||||||
|
localcmd("play debris/beamstart5.wav\n");
|
||||||
|
localcmd("music music/track03.flac\n");
|
||||||
|
g_intro_stage = INTRO_FADETOWHITE;
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
drawpic([g_menuofs[0],g_menuofs[1]], g_bmp[SPLASH8BIT],
|
drawpic([g_menuofs[0],g_menuofs[1]], g_bmp[SPLASH8BIT],
|
||||||
[640,480], [1,1,1], 1.0f);
|
[640,480], [1,1,1], 1.0f);
|
||||||
|
@ -40,14 +67,15 @@ void m_intro_draw(void)
|
||||||
g_intro_progress += frametime;
|
g_intro_progress += frametime;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void m_intro_input(float evtype, float scanx, float chary, float devid)
|
void m_intro_input(float evtype, float scanx, float chary, float devid)
|
||||||
{
|
{
|
||||||
if (evtype == IE_KEYDOWN) {
|
if (evtype == IE_KEYDOWN) {
|
||||||
if (scanx == K_ESCAPE) {
|
if (scanx == K_ESCAPE) {
|
||||||
g_intro_progress = INTRO_TIME;
|
m_intro_skip();
|
||||||
} else if (scanx == K_ENTER) {
|
} else if (scanx == K_ENTER) {
|
||||||
g_intro_progress = INTRO_TIME;
|
m_intro_skip();
|
||||||
|
} else if (scanx == K_SPACE) {
|
||||||
|
m_intro_skip();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -71,6 +71,7 @@ void btn_newgame_start(void)
|
||||||
}
|
}
|
||||||
void btn_training(void)
|
void btn_training(void)
|
||||||
{
|
{
|
||||||
|
localcmd("stopmusic\n");
|
||||||
localcmd("maxplayers 1\n");
|
localcmd("maxplayers 1\n");
|
||||||
localcmd(sprintf("map %s\n", games[gameinfo_current].trainingmap));
|
localcmd(sprintf("map %s\n", games[gameinfo_current].trainingmap));
|
||||||
}
|
}
|
||||||
|
|
|
@ -25,6 +25,7 @@ void ng_btneasy_start(void)
|
||||||
{
|
{
|
||||||
static void ng_btneasy_end(void) {
|
static void ng_btneasy_end(void) {
|
||||||
g_menupage = PAGE_MAIN;
|
g_menupage = PAGE_MAIN;
|
||||||
|
localcmd("stopmusic\n");
|
||||||
localcmd("set skill 1; maxplayers 1\n");
|
localcmd("set skill 1; maxplayers 1\n");
|
||||||
localcmd(sprintf("map %s\n", games[gameinfo_current].startmap));
|
localcmd(sprintf("map %s\n", games[gameinfo_current].startmap));
|
||||||
}
|
}
|
||||||
|
@ -40,6 +41,7 @@ void ng_btnnormal_start(void)
|
||||||
{
|
{
|
||||||
static void ng_btnnormal_end(void) {
|
static void ng_btnnormal_end(void) {
|
||||||
g_menupage = PAGE_MAIN;
|
g_menupage = PAGE_MAIN;
|
||||||
|
localcmd("stopmusic\n");
|
||||||
localcmd("set skill 2; maxplayers 1\n");
|
localcmd("set skill 2; maxplayers 1\n");
|
||||||
localcmd(sprintf("map %s\n", games[gameinfo_current].startmap));
|
localcmd(sprintf("map %s\n", games[gameinfo_current].startmap));
|
||||||
}
|
}
|
||||||
|
@ -55,6 +57,7 @@ void ng_btnhard_start(void)
|
||||||
{
|
{
|
||||||
static void ng_btnhard_end(void) {
|
static void ng_btnhard_end(void) {
|
||||||
g_menupage = PAGE_MAIN;
|
g_menupage = PAGE_MAIN;
|
||||||
|
localcmd("stopmusic\n");
|
||||||
localcmd("set skill 3; maxplayers 1\n");
|
localcmd("set skill 3; maxplayers 1\n");
|
||||||
localcmd(sprintf("map %s\n", games[gameinfo_current].startmap));
|
localcmd(sprintf("map %s\n", games[gameinfo_current].startmap));
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue