mirror of
https://github.com/ZDoom/Raze.git
synced 2025-05-29 16:31:43 +00:00
- backend update from GZDoom.
This commit is contained in:
parent
0840e547b7
commit
b6da4ecddf
50 changed files with 5277 additions and 1366 deletions
|
@ -53,6 +53,37 @@
|
|||
#include "s_soundinternal.h"
|
||||
#include "i_time.h"
|
||||
|
||||
#include "maps.h"
|
||||
|
||||
static ZSMap<FName, DObject*> AllServices;
|
||||
|
||||
static void MarkServices() {
|
||||
|
||||
ZSMap<FName, DObject*>::Iterator it(AllServices);
|
||||
ZSMap<FName, DObject*>::Pair* pair;
|
||||
while (it.NextPair(pair))
|
||||
{
|
||||
GC::Mark<DObject>(pair->Value);
|
||||
}
|
||||
}
|
||||
|
||||
void InitServices()
|
||||
{
|
||||
PClass* cls = PClass::FindClass("Service");
|
||||
for (PClass* clss : PClass::AllClasses)
|
||||
{
|
||||
if (clss != cls && cls->IsAncestorOf(clss))
|
||||
{
|
||||
DObject* obj = clss->CreateNew();
|
||||
obj->ObjectFlags |= OF_Transient;
|
||||
AllServices.Insert(clss->TypeName, obj);
|
||||
}
|
||||
}
|
||||
GC::AddMarkerFunc(&MarkServices);
|
||||
}
|
||||
|
||||
|
||||
|
||||
//==========================================================================
|
||||
//
|
||||
// status bar exports
|
||||
|
@ -1159,7 +1190,12 @@ DEFINE_FIELD_X(MusPlayingInfo, MusPlayingInfo, baseorder);
|
|||
DEFINE_FIELD_X(MusPlayingInfo, MusPlayingInfo, loop);
|
||||
DEFINE_FIELD_X(MusPlayingInfo, MusPlayingInfo, handle);
|
||||
|
||||
extern ZSMap<FName, DObject* > AllServices;
|
||||
|
||||
DEFINE_GLOBAL_NAMED(PClass::AllClasses, AllClasses)
|
||||
|
||||
DEFINE_GLOBAL(AllServices)
|
||||
|
||||
DEFINE_GLOBAL(Bindings)
|
||||
DEFINE_GLOBAL(AutomapBindings)
|
||||
DEFINE_GLOBAL(generic_ui)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue