Menu/Manifests: Allow games to execute commands for the button reserved

for training. Gunman uses this to play a Smacker/Bink video file.
This commit is contained in:
Marco Cawthorne 2020-04-03 14:09:17 +02:00
parent 5055fc8879
commit 7f2f32efb1
11 changed files with 134 additions and 26 deletions

View file

@ -1,13 +1,10 @@
FTEMANIFEST 1 FTEMANIFEST 1
game valve GAME valve
name "Nuclide" NAME "Half-Life"
protocolname "Nuclide" BASEGAME logos
basegame logos BASEGAME valve
basegame valve
disablehomedir 1
rtcbroker master.frag-net.com:27950
// hastily converted // custom game menu variables
-seta gameinfo_game "Nuclide" -seta gameinfo_game "Nuclide"
-seta gameinfo_gamedir "valve" -seta gameinfo_gamedir "valve"
-seta gameinfo_fallback_dir "" -seta gameinfo_fallback_dir ""
@ -16,11 +13,16 @@ rtcbroker master.frag-net.com:27950
-seta gameinfo_url_info "www.icculus.org/~marco/" -seta gameinfo_url_info "www.icculus.org/~marco/"
-seta gameinfo_version "1.0" -seta gameinfo_version "1.0"
-seta gameinfo_url_dl "" -seta gameinfo_url_dl ""
-seta gameinfo_type "" -seta gameinfo_type "Both"
-seta gameinfo_nomodels 0 -seta gameinfo_nomodels 0
-seta gameinfo_gamedll "progs.dat" -seta gameinfo_gamedll "progs.dat"
-seta gameinfo_startmap "c0a0" -seta gameinfo_startmap "c0a0"
-seta gameinfo_trainingmap "t0a0" -seta gameinfo_trainingmap "map t0a0"
-seta gameinfo_cldll 1 -seta gameinfo_cldll 1
-seta gameinfo_hlversion "1110" -seta gameinfo_hlversion "1110"
-seta gameinfo_svonly "0" -seta gameinfo_svonly "0"
// you don't really want to change these
RTCBROKER master.frag-net.com:27950
PROTOCOLNAME "Nuclide"
MAINCONFIG nuclide.cfg

29
gearbox.fmf Executable file
View file

@ -0,0 +1,29 @@
FTEMANIFEST 1
GAME gearbox
NAME "Opposing Force"
BASEGAME logos
BASEGAME valve
BASEGAME gearbox
// custom game menu variables
-seta gameinfo_game "Opposing Force"
-seta gameinfo_gamedir "gearbox"
-seta gameinfo_fallback_dir ""
-seta gameinfo_mpentity "info_player_deathmatch"
-seta gameinfo_size "212803108"
-seta gameinfo_url_info "www.gearboxsoftware.com"
-seta gameinfo_version "1.0"
-seta gameinfo_url_dl ""
-seta gameinfo_type "Singleplayer"
-seta gameinfo_nomodels 0
-seta gameinfo_gamedll "progs.dat"
-seta gameinfo_startmap "of0a0"
-seta gameinfo_trainingmap "map ofboot0"
-seta gameinfo_cldll 1
-seta gameinfo_hlversion "1110"
-seta gameinfo_svonly "0"
// you don't really want to change these
RTCBROKER master.frag-net.com:27950
PROTOCOLNAME "Nuclide"
MAINCONFIG nuclide.cfg

28
rewolf.fmf Executable file
View file

@ -0,0 +1,28 @@
FTEMANIFEST 1
GAME rewolf
NAME "Gunman Chronicles"
BASEGAME logos
BASEGAME rewolf
// custom game menu variables
-seta gameinfo_game "Gunman Chronicles"
-seta gameinfo_gamedir "rewolf"
-seta gameinfo_fallback_dir ""
-seta gameinfo_mpentity "info_player_deathmatch"
-seta gameinfo_size "212803108"
-seta gameinfo_url_info "www.gunmanchronicles.com"
-seta gameinfo_version "1.0"
-seta gameinfo_url_dl ""
-seta gameinfo_type "Both"
-seta gameinfo_nomodels 0
-seta gameinfo_gamedll "progs.dat"
-seta gameinfo_startmap "city1a"
-seta gameinfo_trainingmap "playvideo av:media/rewolf.bik"
-seta gameinfo_cldll 1
-seta gameinfo_hlversion "1110"
-seta gameinfo_svonly "0"
// you don't really want to change these
RTCBROKER master.frag-net.com:27950
PROTOCOLNAME "Nuclide"
MAINCONFIG nuclide.cfg

35
scihunt.fmf Normal file
View file

@ -0,0 +1,35 @@
FTEMANIFEST 1
GAME scihunt
NAME "Scientist Hunt"
BASEGAME logos
BASEGAME valve
BASEGAME scihunt
// custom game menu variables
-seta gameinfo_game "Scientist Hunt"
-seta gameinfo_type "Multiplayer"
-seta gameinfo_gamedir "scihunt"
-seta gameinfo_fallback_dir ""
-seta gameinfo_mpentity "info_player_deathmatch"
-seta gameinfo_size "12869244"
-seta gameinfo_version "1.0"
-seta gameinfo_hlversion "1110"
-seta gameinfo_nomodels 0
-seta gameinfo_gamedll "progs.dat"
-seta gameinfo_startmap "c1a0"
-seta gameinfo_trainingmap "map t0a0"
-seta gameinfo_cldll 1
-seta gameinfo_svonly "0"
-seta gameinfo_url_info "www.richwhitehouse.com"
-seta gameinfo_url_dl "http://www.frag-net.com/mods/scihunt.fmf"
// download/update packaging information
PACKAGE scihunt/pak0.pk3 0xc1cbd5c1 "http://www.frag-net.com/files/scihunt_pak0.pk3"
// do we want this? I don't want to automatically update it
// UPDATEURL http://www.frag-net.com/mods/scihunt.fmf
// you don't really want to change these
RTCBROKER master.frag-net.com:27950
PROTOCOLNAME "Nuclide"
MAINCONFIG nuclide.cfg

View file

@ -49,9 +49,15 @@ void CBaseTrigger :: UseTargets ( void )
} }
} }
if (m_strMessage && eActivator.flags & FL_CLIENT) { /* hack: check to see if this is a sound file */
centerprint(eActivator, m_strMessage); /*if (whichpack(m_strMessage)) {
} print(m_strMessage);
print("\n");
} else {
if (m_strMessage && eActivator.flags & FL_CLIENT) {
centerprint(eActivator, m_strMessage);
}
}*/
if ( m_strKillTarget ) { if ( m_strKillTarget ) {
entity eKill = find( world, CBaseTrigger::m_strTargetName, m_strKillTarget ); entity eKill = find( world, CBaseTrigger::m_strTargetName, m_strKillTarget );

View file

@ -73,7 +73,7 @@ void btn_training(void)
{ {
localcmd("stopmusic\n"); localcmd("stopmusic\n");
localcmd("maxplayers 1\n"); localcmd("maxplayers 1\n");
localcmd(sprintf("map %s\n", games[gameinfo_current].trainingmap)); localcmd(sprintf("%s\n", games[gameinfo_current].trainingmap));
} }
void btn_configuration_start(void) void btn_configuration_start(void)
{ {

View file

@ -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.
*/ */
class monster_human_bandit:CBaseMonster class monster_human_bandit:CBaseNPC
{ {
void() monster_human_bandit; void() monster_human_bandit;
}; };
@ -22,5 +22,7 @@ class monster_human_bandit:CBaseMonster
void monster_human_bandit::monster_human_bandit(void) void monster_human_bandit::monster_human_bandit(void)
{ {
model = "models/bandit.mdl"; model = "models/bandit.mdl";
CBaseMonster::CBaseMonster(); base_mins = [-16,-16,0];
base_maxs = [16,16,72];
CBaseNPC::CBaseNPC();
} }

View file

@ -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.
*/ */
class monster_human_chopper:CBaseEntity class monster_human_chopper:CBaseNPC
{ {
void() monster_human_chopper; void() monster_human_chopper;
}; };
@ -22,7 +22,7 @@ class monster_human_chopper:CBaseEntity
void monster_human_chopper::monster_human_chopper(void) void monster_human_chopper::monster_human_chopper(void)
{ {
model = "models/chopper.mdl"; model = "models/chopper.mdl";
CBaseEntity::CBaseEntity(); base_mins = [-16,-16,0];
setmodel(this, m_oldModel); base_maxs = [16,16,72];
setorigin(this, origin); CBaseNPC::CBaseNPC();
} }

View file

@ -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.
*/ */
class monster_human_demoman:CBaseMonster class monster_human_demoman:CBaseNPC
{ {
void() monster_human_demoman; void() monster_human_demoman;
}; };
@ -22,5 +22,7 @@ class monster_human_demoman:CBaseMonster
void monster_human_demoman::monster_human_demoman(void) void monster_human_demoman::monster_human_demoman(void)
{ {
model = "models/demolitionman.mdl"; model = "models/demolitionman.mdl";
CBaseMonster::CBaseMonster(); base_mins = [-16,-16,0];
base_maxs = [16,16,72];
CBaseNPC::CBaseNPC();
} }

View file

@ -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.
*/ */
class monster_human_gunman:CBaseMonster class monster_human_gunman:CBaseNPC
{ {
void() monster_human_gunman; void() monster_human_gunman;
}; };
@ -22,5 +22,7 @@ class monster_human_gunman:CBaseMonster
void monster_human_gunman::monster_human_gunman(void) void monster_human_gunman::monster_human_gunman(void)
{ {
model = "models/gunmantrooper.mdl"; model = "models/gunmantrooper.mdl";
CBaseMonster::CBaseMonster(); base_mins = [-16,-16,0];
base_maxs = [16,16,72];
CBaseNPC::CBaseNPC();
} }

View file

@ -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.
*/ */
class monster_human_unarmed:CBaseMonster class monster_human_unarmed:CBaseNPC
{ {
void() monster_human_unarmed; void() monster_human_unarmed;
}; };
@ -22,5 +22,7 @@ class monster_human_unarmed:CBaseMonster
void monster_human_unarmed::monster_human_unarmed(void) void monster_human_unarmed::monster_human_unarmed(void)
{ {
model = "models/gunmantrooper.mdl"; model = "models/gunmantrooper.mdl";
CBaseMonster::CBaseMonster(); base_mins = [-16,-16,0];
base_maxs = [16,16,72];
CBaseNPC::CBaseNPC();
} }