- Next round of things from Gez's experimental build:

* MBF's dog (definition only, no sprites yet.)
  * User variables. There's an array of 10. They can be set and checked in both DECORATE and ACS.
  * Made the tag name changeable but eliminated the redundancy of having both the meta property and the individual actor's one. Having one is fully sufficient. TO BE FIXED: Names are case insensitive but this should better be case sensitive. Unfortunately there's currently nothing better than FName to store a string inside an actor without severely complicating matters. Also bumped savegame version to avoid problems with this change.


SVN r1823 (trunk)
This commit is contained in:
Christoph Oelckers 2009-09-14 21:41:44 +00:00
commit a59de25107
20 changed files with 213 additions and 66 deletions

View file

@ -110,6 +110,24 @@ CVAR (Bool, chasedemo, false, 0);
CVAR (Bool, storesavepic, true, CVAR_ARCHIVE|CVAR_GLOBALCONFIG)
CVAR (Bool, longsavemessages, true, CVAR_ARCHIVE|CVAR_GLOBALCONFIG)
CVAR (String, save_dir, "", CVAR_ARCHIVE|CVAR_GLOBALCONFIG);
EXTERN_CVAR (Float, con_midtime);
//==========================================================================
//
// CVAR displaynametags
//
// Selects whether to display name tags or not when changing weapons
//
//==========================================================================
CUSTOM_CVAR (Bool, displaynametags, 0, CVAR_ARCHIVE)
{
if (self != 0 && self != 1)
{
self = 0;
}
}
gameaction_t gameaction;
gamestate_t gamestate = GS_STARTUP;
@ -335,6 +353,10 @@ CCMD (invnext)
who->InvSel = who->Inventory;
}
}
if (displaynametags && StatusBar && SmallFont
&& gamestate == GS_LEVEL && level.time > con_midtime && who->InvSel)
StatusBar->AttachMessage (new DHUDMessage (SmallFont, who->InvSel->GetTag(),
2.5f, 0.375f, 0, 0, CR_YELLOW, con_midtime), MAKE_ID('S','I','N','V'));
}
who->player->inventorytics = 5*TICRATE;
}
@ -362,6 +384,10 @@ CCMD (invprev)
}
who->InvSel = item;
}
if (displaynametags && StatusBar && SmallFont
&& gamestate == GS_LEVEL && level.time > con_midtime && who->InvSel)
StatusBar->AttachMessage (new DHUDMessage (SmallFont, who->InvSel->GetTag(),
2.5f, 0.375f, 0, 0, CR_YELLOW, con_midtime), MAKE_ID('S','I','N','V'));
}
who->player->inventorytics = 5*TICRATE;
}
@ -385,9 +411,7 @@ CCMD(invquery)
AInventory *inv = players[consoleplayer].mo->InvSel;
if (inv != NULL)
{
const char *description = inv->GetClass()->Meta.GetMetaString(AMETA_StrifeName);
if (description == NULL) description = inv->GetClass()->TypeName;
Printf(PRINT_HIGH, "%s (%dx)\n", description, inv->Amount);
Printf(PRINT_HIGH, "%s (%dx)\n", inv->GetTag(), inv->Amount);
}
}