74 lines
No EOL
1.9 KiB
C++
74 lines
No EOL
1.9 KiB
C++
// BLANKART
|
|
//-----------------------------------------------------------------------------
|
|
// Copyright (C) 2025 by Vivian "toastergrl" Grannell.
|
|
// Copyright (C) 2025 by Kart Krew.
|
|
// Copyright (C) 2025 by "yama".
|
|
// Copyright (C) 2025 Blankart Team.
|
|
//
|
|
// This program is free software distributed under the
|
|
// terms of the GNU General Public License, version 2.
|
|
// See the 'LICENSE' file for more details.
|
|
//-----------------------------------------------------------------------------
|
|
/// \file k_dscredits.hpp
|
|
/// \brief (Mostly) secret MKDS credits :)
|
|
|
|
#ifndef __F_DSCREDITS__
|
|
#define __F_DSCREDITS__
|
|
|
|
#include "doomdef.h"
|
|
#include "m_fixed.h"
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
#define MAXDSOBJECTS (MAXPLAYERS + (48 - MAXPLAYERS))
|
|
#define DSOBJOFFSCREEN 48
|
|
|
|
#define FRAMETOSEC (FRACUNIT / TICRATE)
|
|
|
|
#define CREDITSDELAY (TICRATE / 2)
|
|
|
|
// "Special" players, such as us, our rival, and the various unique characters in Act 2.
|
|
#define DSUNIQUEPLAYERS 3
|
|
|
|
extern longtic_t creditstimings[];
|
|
|
|
typedef struct dscredits_s {
|
|
longtic_t ticker;
|
|
tic_t delaytoplayer;
|
|
tic_t delaytobg;
|
|
UINT16 creditsscene; // "Scene" number of credits, iterated by 1 for each timing.
|
|
struct dscreditsobj_s
|
|
{
|
|
boolean active;
|
|
boolean player; // Are we a player?
|
|
UINT16 skin;
|
|
UINT16 color;
|
|
patch_t *patch; // Patch.
|
|
INT32 position[2]; // Position
|
|
fixed_t scale; // Scale
|
|
INT32 speed[2]; // Speed
|
|
|
|
INT64 movestop; // Stops our movement after
|
|
INT64 movestart; // Restarts our movement
|
|
INT32 movestartspd[2]; // Speed to apply on movestart
|
|
|
|
UINT8 glance; // They look at one another as they drive
|
|
boolean spinout; // Spinning out?
|
|
} creditsobj[MAXDSOBJECTS + DSUNIQUEPLAYERS];
|
|
|
|
} dscredits_t;
|
|
|
|
extern dscredits_t dscredits;
|
|
|
|
extern tic_t dscreditsticks;
|
|
|
|
void F_SecretCreditsTicker(void);
|
|
void F_SecretCreditsDrawer(void);
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif // __F_DSCREDITS__
|