16/02/15 Starting some setup

This commit is contained in:
ZTsukei 2016-02-15 11:08:41 -05:00
parent 879389c379
commit 69f9c10a99
15 changed files with 202 additions and 21 deletions

View file

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> <Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations"> <ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|Win32"> <ProjectConfiguration Include="Debug|Win32">
<Configuration>Debug</Configuration> <Configuration>Debug</Configuration>
@ -26,18 +26,22 @@
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration"> <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<ConfigurationType>StaticLibrary</ConfigurationType> <ConfigurationType>StaticLibrary</ConfigurationType>
<UseOfMfc>false</UseOfMfc> <UseOfMfc>false</UseOfMfc>
<PlatformToolset>v120</PlatformToolset>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration"> <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>StaticLibrary</ConfigurationType> <ConfigurationType>StaticLibrary</ConfigurationType>
<UseOfMfc>false</UseOfMfc> <UseOfMfc>false</UseOfMfc>
<PlatformToolset>v120</PlatformToolset>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration"> <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
<ConfigurationType>StaticLibrary</ConfigurationType> <ConfigurationType>StaticLibrary</ConfigurationType>
<UseOfMfc>false</UseOfMfc> <UseOfMfc>false</UseOfMfc>
<PlatformToolset>v120</PlatformToolset>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration"> <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
<ConfigurationType>StaticLibrary</ConfigurationType> <ConfigurationType>StaticLibrary</ConfigurationType>
<UseOfMfc>false</UseOfMfc> <UseOfMfc>false</UseOfMfc>
<PlatformToolset>v120</PlatformToolset>
</PropertyGroup> </PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" /> <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings"> <ImportGroup Label="ExtensionSettings">

View file

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> <Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations"> <ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|Win32"> <ProjectConfiguration Include="Debug|Win32">
<Configuration>Debug</Configuration> <Configuration>Debug</Configuration>
@ -26,18 +26,22 @@
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration"> <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>StaticLibrary</ConfigurationType> <ConfigurationType>StaticLibrary</ConfigurationType>
<UseOfMfc>false</UseOfMfc> <UseOfMfc>false</UseOfMfc>
<PlatformToolset>v120</PlatformToolset>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration"> <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<ConfigurationType>StaticLibrary</ConfigurationType> <ConfigurationType>StaticLibrary</ConfigurationType>
<UseOfMfc>false</UseOfMfc> <UseOfMfc>false</UseOfMfc>
<PlatformToolset>v120</PlatformToolset>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration"> <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
<ConfigurationType>StaticLibrary</ConfigurationType> <ConfigurationType>StaticLibrary</ConfigurationType>
<UseOfMfc>false</UseOfMfc> <UseOfMfc>false</UseOfMfc>
<PlatformToolset>v120</PlatformToolset>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration"> <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
<ConfigurationType>StaticLibrary</ConfigurationType> <ConfigurationType>StaticLibrary</ConfigurationType>
<UseOfMfc>false</UseOfMfc> <UseOfMfc>false</UseOfMfc>
<PlatformToolset>v120</PlatformToolset>
</PropertyGroup> </PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" /> <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings"> <ImportGroup Label="ExtensionSettings">

View file

@ -227,6 +227,95 @@ typedef enum
pw_nocontrol, pw_nocontrol,
pw_ingoop, // In goop pw_ingoop, // In goop
// /////////////// //
// SRB2kart Powers // // SRB2kart 16/02/15 (TODO: Remove Riders powers we don't need.)
// /////////////// //
// Riders
pw_boost,
pw_brake,
pw_exrun, // Are you on your gear?
pw_exspeed, // Extreme Gear speed
pw_airtank, // Air points for your gear
pw_airstartpoint, // More points = Less airtank points
pw_bustable,
pw_ramp,
pw_rampspeed,
pw_rampheight,
pw_rampspeed2,
pw_rampheight2,
pw_rampangle,
pw_rampscore,
pw_jmpcharge, // Hold the jump button to charge it first
// Race
pw_drift, // Drifting Left or Right, plus a bigger counter = sharper turn
pw_driftcharge, // Charge your drift so you can release a burst of speed
pw_jmp, // In Mario Kart, letting go of the jump button stops the drift
pw_positiondelay, // Similar to P_PlayTauntSound's delay
pw_oldposition,
// Kart
pw_kartitem,
pw_itemslot, // If you have X item, and kartitem chose X too, save it.
pw_star, // 1 = Star in inventory
pw_mushroom, // Whether you are currently shroom boosting
pw_shroom, // 1 = 1 Mushroom in inventory, 2 = 2 Mushrooms in inventory,
// 4 = 3 Mushrooms in inventory, 8 = Gold Shroom in inventory
pw_goldshroom, // Timer for gold shroom usage
pw_megamushroom, // 1 = mega shroom in inventory
// Moved here because I don't want to break maps
pw_bananacam, // Player turning timer
pw_thunder, // 1 = lightning in inventory
pw_blueshell, // 1 = Blue Shell in inventory
pw_shell, // 1 = shell being held, 2 = shell in inventory
pw_tripleshell, // 1 = 1 shell circling, 2 = 2 shells circling,
// 4 = 3 shells circling, 8 = triple shells in inventory
pw_redshell, // 1 = redshell being held, 2 = redshell in inventory
pw_tripleredshell, // 1 = 1 red shell circling, 2 = 2 red shells circling,
// 4 = 3 red shells circling, 8 = triple red shells in inventory
pw_banana, // 1 = banana being held, 2 = banana in inventory
pw_triplebanana, // 1 = 1 banana following, 2 = 2 bananas following,
// 4 = 3 bananas following, 8 = triple bananas in inventory
pw_fakeitem, // 1 = fake being held, 2 = fake in inventory
pw_bomb, // 1 = bomb being held, 2 = bomb in inventory
pw_shrink, // > 0 = small, < 0 = big
pw_squished, // Squashed timer
pw_boostcharge, // Charge your engine at the start of the race for a boost
pw_fishing, // Set up a timer that forces you to be in the air while respawning
// Misc
pw_psychic, // Silver's floating power
pw_waypoint, // Waypoints. 'nuff said.
pw_introcam, // Early joiners need this, or a new joiner's camera will randomly rotate
pw_sounds, // We use this to avoid sounds being played every tic
pw_boo, // The initial boo, when used we decide who to swap with and
// if we will actually swap, 1 = have boo in inventory
pw_bootake, // You are stealing an item from another player with boo, this is your timer
pw_boostolen, // you are the player being stolen from, this is your timer
pw_greenboo,
pw_kitchensink,
pw_pcd, // Past Checkpoint Distance
pw_ncd, // Next Chekpoint Distance
NUMPOWERS NUMPOWERS
} powertype_t; } powertype_t;
@ -366,6 +455,9 @@ typedef struct player_s
tic_t realtime; // integer replacement for leveltime tic_t realtime; // integer replacement for leveltime
UINT8 laps; // Number of laps (optional) UINT8 laps; // Number of laps (optional)
tic_t checkpointtimes[256]; // Checkpoints for race mode, etc // SRB2kart 16/02/15
INT32 playerahead; // is someone ahead of me or not? // "
//////////////////// ////////////////////
// CTF Mode Stuff // // CTF Mode Stuff //
//////////////////// ////////////////////
@ -434,6 +526,21 @@ typedef struct player_s
#ifdef HWRENDER #ifdef HWRENDER
fixed_t fovadd; // adjust FOV for hw rendering fixed_t fovadd; // adjust FOV for hw rendering
#endif #endif
INT32 chargei; // SRB2kart 16/02/15 ++ All lines below until end of enum
INT32 starpostwp;
INT32 position;
INT32 heldDir; // Held dir of controls; 1 = forward, 0 = none, -1 = backward
INT32 turning;
INT32 newfloorz;
INT32 lakitu;
INT32 spinout; // Seperate timer from pw_bananacam so that you can't get stuck spinning
UINT8 spinouttype; // The type of spinout you are currently suffering, 0 = slipping forwards, 1 = completely still
UINT8 boosting; // if you're currently shroomboosting
} player_t; } player_t;
#endif #endif

View file

@ -41,6 +41,8 @@ typedef enum
BT_CUSTOM1 = 1<<13, BT_CUSTOM1 = 1<<13,
BT_CUSTOM2 = 1<<14, BT_CUSTOM2 = 1<<14,
BT_CUSTOM3 = 1<<15, BT_CUSTOM3 = 1<<15,
BT_FORWARD = 1<<16, // SRB2kart 16/02/15
BT_BACKWARD = 1<<17,
} buttoncode_t; } buttoncode_t;
// The data sampled per tick (single player) // The data sampled per tick (single player)

View file

@ -988,6 +988,14 @@ static const struct {
{"CHRISTMAS",TOL_XMAS}, {"CHRISTMAS",TOL_XMAS},
{"WINTER",TOL_XMAS}, {"WINTER",TOL_XMAS},
{"RETRO",TOL_RETROKART}, // SRB2kart 16/02/15
{"RETROKART",TOL_RETROKART},
{"MARIOKART",TOL_RETROKART},
{"NEO",TOL_NEOKART},
{"NEOKART",TOL_NEOKART},
{"SONICKART",TOL_NEOKART},
{NULL, 0} {NULL, 0}
}; };
@ -1185,6 +1193,8 @@ static void readlevelheader(MYFILE *f, INT32 num)
mapheaderinfo[num-1]->countdown = (INT16)i; mapheaderinfo[num-1]->countdown = (INT16)i;
else if (fastcmp(word, "PALETTE")) else if (fastcmp(word, "PALETTE"))
mapheaderinfo[num-1]->palette = (UINT16)i; mapheaderinfo[num-1]->palette = (UINT16)i;
else if (fastcmp(word, "AUTOMAP")) // SRB2kart 16/02/15
mapheaderinfo[num-1]->automap = (UINT16)i;
else if (fastcmp(word, "NUMLAPS")) else if (fastcmp(word, "NUMLAPS"))
mapheaderinfo[num-1]->numlaps = (UINT8)i; mapheaderinfo[num-1]->numlaps = (UINT8)i;
else if (fastcmp(word, "UNLOCKABLE")) else if (fastcmp(word, "UNLOCKABLE"))
@ -2008,9 +2018,9 @@ static void readsound(MYFILE *f, INT32 num, const char *savesfxnames[])
/** Checks if a game data file name for a mod is good. /** Checks if a game data file name for a mod is good.
* "Good" means that it contains only alphanumerics, _, and -; * "Good" means that it contains only alphanumerics, _, and -;
* ends in ".dat"; has at least one character before the ".dat"; * ends in ".dat"; has at least one character before the ".dat";
* and is not "gamedata.dat" (tested case-insensitively). * and is not "srb2kart.dat" (tested case-insensitively).
* *
* Assumption: that gamedata.dat is the only .dat file that will * Assumption: that srb2kart.dat is the only .dat file that will
* ever be treated specially by the game. * ever be treated specially by the game.
* *
* Note: Check for the tail ".dat" case-insensitively since at * Note: Check for the tail ".dat" case-insensitively since at
@ -2034,9 +2044,9 @@ static boolean GoodDataFileName(const char *s)
if (p <= s) return false; // too short if (p <= s) return false; // too short
if (!fasticmp(p, tail)) return false; // doesn't end in .dat if (!fasticmp(p, tail)) return false; // doesn't end in .dat
#ifdef DELFILE #ifdef DELFILE
if (fasticmp(s, "gamedata.dat") && !disableundo) return false; if (fasticmp(s, "srb2kart.dat") && !disableundo) return false; // SRB2kart 16/02/15
#else #else
if (fasticmp(s, "gamedata.dat")) return false; if (fasticmp(s, "srb2kart.dat")) return false;
#endif #endif
return true; return true;

View file

@ -143,9 +143,9 @@ extern FILE *logstream;
#define SUBVERSION 0 // more precise version number #define SUBVERSION 0 // more precise version number
#define VERSIONSTRING "Trunk" #define VERSIONSTRING "Trunk"
#else #else
#define VERSION 201 // Game version #define VERSION 1602 // Game version // SRB2kart 16/02/15
#define SUBVERSION 14 // more precise version number #define SUBVERSION 15 // more precise version number
#define VERSIONSTRING "v2.1.14" #define VERSIONSTRING "v16.02.15"
// Hey! If you change this, add 1 to the MODVERSION below! // Hey! If you change this, add 1 to the MODVERSION below!
// Otherwise we can't force updates! // Otherwise we can't force updates!
#endif #endif
@ -161,7 +161,7 @@ extern FILE *logstream;
// The string used in the alert that pops up in the event of an update being available. // The string used in the alert that pops up in the event of an update being available.
// Please change to apply to your modification (we don't want everyone asking where your mod is on SRB2.org!). // Please change to apply to your modification (we don't want everyone asking where your mod is on SRB2.org!).
#define UPDATE_ALERT_STRING \ #define UPDATE_ALERT_STRING \
"A new update is available for SRB2.\n"\ "A new update is available for SRB2Kart.\n"\ // SRB2kart 16/02/15 (TODO: Put mod URL here)
"Please visit SRB2.org to download it.\n"\ "Please visit SRB2.org to download it.\n"\
"\n"\ "\n"\
"You are using version: %s\n"\ "You are using version: %s\n"\
@ -178,7 +178,7 @@ extern FILE *logstream;
// The string used in the I_Error alert upon trying to host through command line parameters. // The string used in the I_Error alert upon trying to host through command line parameters.
// Generally less filled with newlines, since Windows gives you lots more room to work with. // Generally less filled with newlines, since Windows gives you lots more room to work with.
#define UPDATE_ALERT_STRING_CONSOLE \ #define UPDATE_ALERT_STRING_CONSOLE \
"A new update is available for SRB2.\n"\ "A new update is available for SRB2Kart.\n"\ // SRB2kart 16/02/15 (TODO: Put mod URL here)
"Please visit SRB2.org to download it.\n"\ "Please visit SRB2.org to download it.\n"\
"\n"\ "\n"\
"You are using version: %s\n"\ "You are using version: %s\n"\
@ -197,13 +197,13 @@ extern FILE *logstream;
// The Modification ID; must be obtained from Inuyasha ( http://mb.srb2.org/private.php?do=newpm&u=2604 ). // The Modification ID; must be obtained from Inuyasha ( http://mb.srb2.org/private.php?do=newpm&u=2604 ).
// DO NOT try to set this otherwise, or your modification will be unplayable through the Master Server. // DO NOT try to set this otherwise, or your modification will be unplayable through the Master Server.
// "12" is the default mod ID for version 2.1 // "12" is the default mod ID for version 2.1
#define MODID 12 #define MODID 9 // SRB2kart 16/02/15 (TODO: Check if this needs to be updated)
// The Modification Version, starting from 1. Do not follow your version string for this, // The Modification Version, starting from 1. Do not follow your version string for this,
// it's only for detection of the version the player is using so the MS can alert them of an update. // it's only for detection of the version the player is using so the MS can alert them of an update.
// Only set it higher, not lower, obviously. // Only set it higher, not lower, obviously.
// Note that we use this to help keep internal testing in check; this is why v2.1.0 is not version "1". // Note that we use this to help keep internal testing in check; this is why v2.1.0 is not version "1".
#define MODVERSION 19 #define MODVERSION 7
@ -350,7 +350,7 @@ void CONS_Debug(INT32 debugflags, const char *fmt, ...) FUNCDEBUG;
#define DEVMAPS "devmaps" #define DEVMAPS "devmaps"
#define DEVDATA "devdata" #define DEVDATA "devdata"
#define SAVEGAMENAME "srb2sav" #define SAVEGAMENAME "srb2kartsav" // SRB2kart 16/02/15
char savegamename[256]; char savegamename[256];

View file

@ -235,6 +235,7 @@ typedef struct
UINT8 cutscenenum; ///< Cutscene number to use, 0 for none. UINT8 cutscenenum; ///< Cutscene number to use, 0 for none.
INT16 countdown; ///< Countdown until level end? INT16 countdown; ///< Countdown until level end?
UINT16 palette; ///< PAL lump to use on this map UINT16 palette; ///< PAL lump to use on this map
boolean automap; ///< Displays a level's white map outline in modified games // SRB2kart 16/02/15
UINT8 numlaps; ///< Number of laps in circuit mode, unless overridden. UINT8 numlaps; ///< Number of laps in circuit mode, unless overridden.
SINT8 unlockrequired; ///< Is an unlockable required to play this level? -1 if no. SINT8 unlockrequired; ///< Is an unlockable required to play this level? -1 if no.
UINT8 levelselect; ///< Is this map available in the level select? If so, which map list is it available in? UINT8 levelselect; ///< Is this map available in the level select? If so, which map list is it available in?
@ -289,7 +290,10 @@ enum TypeOfLevel
TOL_MARIO = 0x0200, ///< Mario TOL_MARIO = 0x0200, ///< Mario
TOL_NIGHTS = 0x0400, ///< NiGHTS TOL_NIGHTS = 0x0400, ///< NiGHTS
TOL_ERZ3 = 0x0800, ///< ERZ3 TOL_ERZ3 = 0x0800, ///< ERZ3
TOL_XMAS = 0x1000 ///< Christmas NiGHTS TOL_XMAS = 0x1000, ///< Christmas NiGHTS
TOL_RETROKART = 0x2000, ///< SRB2kart 'Retro' mode // SRB2kart 16/02/15
TOL_NEOKART = 0x4000 ///< SRB2kart 'Neo' mode
}; };
// Gametypes // Gametypes

View file

@ -60,7 +60,7 @@ JoyType_t Joystick2;
// 1024 bytes is plenty for a savegame // 1024 bytes is plenty for a savegame
#define SAVEGAMESIZE (1024) #define SAVEGAMESIZE (1024)
char gamedatafilename[64] = "gamedata.dat"; char gamedatafilename[64] = "srb2kart.dat"; // SRB2kart 16/02/15
char timeattackfolder[64] = "main"; char timeattackfolder[64] = "main";
char customversionstring[32] = "\0"; char customversionstring[32] = "\0";

View file

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> <Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations"> <ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|Win32"> <ProjectConfiguration Include="Debug|Win32">
<Configuration>Debug</Configuration> <Configuration>Debug</Configuration>
@ -27,18 +27,22 @@
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration"> <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType> <ConfigurationType>DynamicLibrary</ConfigurationType>
<UseOfMfc>false</UseOfMfc> <UseOfMfc>false</UseOfMfc>
<PlatformToolset>v120</PlatformToolset>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration"> <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType> <ConfigurationType>DynamicLibrary</ConfigurationType>
<UseOfMfc>false</UseOfMfc> <UseOfMfc>false</UseOfMfc>
<PlatformToolset>v120</PlatformToolset>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration"> <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType> <ConfigurationType>DynamicLibrary</ConfigurationType>
<UseOfMfc>false</UseOfMfc> <UseOfMfc>false</UseOfMfc>
<PlatformToolset>v120</PlatformToolset>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration"> <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType> <ConfigurationType>DynamicLibrary</ConfigurationType>
<UseOfMfc>false</UseOfMfc> <UseOfMfc>false</UseOfMfc>
<PlatformToolset>v120</PlatformToolset>
</PropertyGroup> </PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" /> <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings"> <ImportGroup Label="ExtensionSettings">

View file

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> <Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations"> <ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|Win32"> <ProjectConfiguration Include="Debug|Win32">
<Configuration>Debug</Configuration> <Configuration>Debug</Configuration>
@ -28,19 +28,23 @@
<ConfigurationType>DynamicLibrary</ConfigurationType> <ConfigurationType>DynamicLibrary</ConfigurationType>
<UseOfMfc>false</UseOfMfc> <UseOfMfc>false</UseOfMfc>
<CharacterSet>MultiByte</CharacterSet> <CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v120</PlatformToolset>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration"> <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType> <ConfigurationType>DynamicLibrary</ConfigurationType>
<UseOfMfc>false</UseOfMfc> <UseOfMfc>false</UseOfMfc>
<PlatformToolset>v120</PlatformToolset>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration"> <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType> <ConfigurationType>DynamicLibrary</ConfigurationType>
<UseOfMfc>false</UseOfMfc> <UseOfMfc>false</UseOfMfc>
<CharacterSet>MultiByte</CharacterSet> <CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v120</PlatformToolset>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration"> <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType> <ConfigurationType>DynamicLibrary</ConfigurationType>
<UseOfMfc>false</UseOfMfc> <UseOfMfc>false</UseOfMfc>
<PlatformToolset>v120</PlatformToolset>
</PropertyGroup> </PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" /> <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings"> <ImportGroup Label="ExtensionSettings">

View file

@ -59,6 +59,9 @@
#define mariomode (maptol & TOL_MARIO) #define mariomode (maptol & TOL_MARIO)
#define twodlevel (maptol & TOL_2D) #define twodlevel (maptol & TOL_2D)
#define retrokart (maptol & TOL_RETROKART) // SRB2kart 16/02/15
#define neokart (maptol & TOL_NEOKART)
// //
// P_TICK // P_TICK
// //
@ -360,6 +363,11 @@ void P_CheckPointLimit(void);
void P_CheckSurvivors(void); void P_CheckSurvivors(void);
boolean P_CheckRacers(void); boolean P_CheckRacers(void);
void P_PlayBoardSound(mobj_t *source); // SRB2kart 16/02/15
void P_LookForWaypoints(player_t *player); // "
void P_Waypoint(mobj_t *source, mobj_t *enemy); // "
INT32 P_CheckPlayerAhead(player_t *player, INT32 tocheck); // "
void P_ClearStarPost(INT32 postnum); void P_ClearStarPost(INT32 postnum);
void P_ResetStarposts(void); void P_ResetStarposts(void);

View file

@ -72,6 +72,9 @@ static inline void P_ArchivePlayer(void)
WRITEINT32(save_p, pllives); WRITEINT32(save_p, pllives);
WRITEINT32(save_p, player->continues); WRITEINT32(save_p, player->continues);
WRITEUINT8(save_p, player->starpostwp); // SRB2kart 16/02/15
WRITEUINT8(save_p, player->position); // "
if (botskin) if (botskin)
{ {
WRITEUINT8(save_p, botskin); WRITEUINT8(save_p, botskin);
@ -91,6 +94,9 @@ static inline void P_UnArchivePlayer(void)
savedata.lives = READINT32(save_p); savedata.lives = READINT32(save_p);
savedata.continues = READINT32(save_p); savedata.continues = READINT32(save_p);
savedata.starpostwp = READUINT8(save_p); // SRB2kart 16/02/15
savedata.position = READUINT8(save_p); // "
if (savedata.botcolor) if (savedata.botcolor)
{ {
savedata.botskin = READUINT8(save_p); savedata.botskin = READUINT8(save_p);
@ -177,6 +183,10 @@ static inline void P_NetArchivePlayers(void)
WRITEUINT32(save_p, players[i].realtime); WRITEUINT32(save_p, players[i].realtime);
WRITEUINT8(save_p, players[i].laps); WRITEUINT8(save_p, players[i].laps);
for (j = 0; j < (256); j++) // SRB2kart 16/02/15
WRITEUINT32(save_p, players[i].checkpointtimes[j]); // "
WRITEINT32(save_p, players[i].playerahead); // "
//////////////////// ////////////////////
// CTF Mode Stuff // // CTF Mode Stuff //
//////////////////// ////////////////////
@ -271,6 +281,8 @@ static inline void P_NetArchivePlayers(void)
WRITEUINT8(save_p, players[i].accelstart); WRITEUINT8(save_p, players[i].accelstart);
WRITEUINT8(save_p, players[i].acceleration); WRITEUINT8(save_p, players[i].acceleration);
WRITEFIXED(save_p, players[i].jumpfactor); WRITEFIXED(save_p, players[i].jumpfactor);
WRITEINT32(save_p, players[i].position); // SRB2kart 16/02/15
} }
} }
@ -352,6 +364,10 @@ static inline void P_NetUnArchivePlayers(void)
players[i].realtime = READUINT32(save_p); // integer replacement for leveltime players[i].realtime = READUINT32(save_p); // integer replacement for leveltime
players[i].laps = READUINT8(save_p); // Number of laps (optional) players[i].laps = READUINT8(save_p); // Number of laps (optional)
for (j = 0; j < (256); j++) // SRB2kart 16/02/15
players[i].checkpointtimes[j] = READUINT32(save_p); // "
players[i].playerahead = READINT32(save_p); // "
//////////////////// ////////////////////
// CTF Mode Stuff // // CTF Mode Stuff //
//////////////////// ////////////////////
@ -437,6 +453,8 @@ static inline void P_NetUnArchivePlayers(void)
players[i].accelstart = READUINT8(save_p); players[i].accelstart = READUINT8(save_p);
players[i].acceleration = READUINT8(save_p); players[i].acceleration = READUINT8(save_p);
players[i].jumpfactor = READFIXED(save_p); players[i].jumpfactor = READFIXED(save_p);
players[i].position = READINT32(save_p);
} }
} }

View file

@ -38,6 +38,14 @@ typedef struct
INT32 lives; INT32 lives;
INT32 continues; INT32 continues;
UINT16 emeralds; UINT16 emeralds;
INT32 starpostwp; // SRB2kart 16/02/15
INT32 position; // "
INT32 helddir; // Held dir of controls; 1 = forward, 0 = none, -1 = backward
INT32 turning; // "
INT32 newfloorz; // "
INT32 lakitu; // "
} savedata_t; } savedata_t;
extern savedata_t savedata; extern savedata_t savedata;

View file

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> <Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations"> <ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|Win32"> <ProjectConfiguration Include="Debug|Win32">
<Configuration>Debug</Configuration> <Configuration>Debug</Configuration>
@ -27,18 +27,22 @@
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration"> <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType> <ConfigurationType>Application</ConfigurationType>
<UseOfMfc>false</UseOfMfc> <UseOfMfc>false</UseOfMfc>
<PlatformToolset>v120</PlatformToolset>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration"> <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType> <ConfigurationType>Application</ConfigurationType>
<UseOfMfc>false</UseOfMfc> <UseOfMfc>false</UseOfMfc>
<PlatformToolset>v120</PlatformToolset>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration"> <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType> <ConfigurationType>Application</ConfigurationType>
<UseOfMfc>false</UseOfMfc> <UseOfMfc>false</UseOfMfc>
<PlatformToolset>v120</PlatformToolset>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration"> <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType> <ConfigurationType>Application</ConfigurationType>
<UseOfMfc>false</UseOfMfc> <UseOfMfc>false</UseOfMfc>
<PlatformToolset>v120</PlatformToolset>
</PropertyGroup> </PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" /> <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings"> <ImportGroup Label="ExtensionSettings">

View file

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> <Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations"> <ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|Win32"> <ProjectConfiguration Include="Debug|Win32">
<Configuration>Debug</Configuration> <Configuration>Debug</Configuration>
@ -27,18 +27,22 @@
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration"> <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType> <ConfigurationType>Application</ConfigurationType>
<UseOfMfc>false</UseOfMfc> <UseOfMfc>false</UseOfMfc>
<PlatformToolset>v120</PlatformToolset>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration"> <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType> <ConfigurationType>Application</ConfigurationType>
<UseOfMfc>false</UseOfMfc> <UseOfMfc>false</UseOfMfc>
<PlatformToolset>v120</PlatformToolset>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration"> <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType> <ConfigurationType>Application</ConfigurationType>
<UseOfMfc>false</UseOfMfc> <UseOfMfc>false</UseOfMfc>
<PlatformToolset>v120</PlatformToolset>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration"> <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType> <ConfigurationType>Application</ConfigurationType>
<UseOfMfc>false</UseOfMfc> <UseOfMfc>false</UseOfMfc>
<PlatformToolset>v120</PlatformToolset>
</PropertyGroup> </PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" /> <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings"> <ImportGroup Label="ExtensionSettings">