SCENERIO_EDITOR now compiles.

This commit is contained in:
Justin Marshall
2020-06-05 18:49:43 -07:00
parent d223adebd7
commit ca2e5bc7e6
17 changed files with 1614 additions and 1584 deletions
-43
View File
@@ -13,46 +13,3 @@
// GNU General Public License along with permitted additional restrictions
// with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
#define TXT_CLEAR_MAP 0x3e8 // Clear the map
#define TXT_INHERIT_MAP 0x3e9 // Inherit previous map
#define TXT_SPECIAL_OPTIONS 0x3ea // Select Special Options
#define TXT_VISIBLE_TARGET 0x3eb // Targeting flash visible to
#define TXT_TREE_TARGET 0x3ec // Allow targeting of trees.
#define TXT_MCV_DEPLOY 0x3ed // Allow undeploy of
#define TXT_SMART_DEFENCE 0x3ee // Employ smarter self defense
#define TXT_SLOW_BUILD 0x3ef // Moderate production speed.
#define TXT_THREE_POINT 0x3f0 // Use three point turn logic.
#define TXT_TIBERIUM_GROWTH 0x3f1 // Ore will grow.
#define TXT_TIBERIUM_SPREAD 0x3f2 // Ore will spread.
#define TXT_ROAD_PIECES 0x3f3 // Disable building "bib"
#define TXT_SCATTER 0x3f4 // Allow running from
#define TXT_SHOW_NAMES 0x3f5 // Show true object names.
#define TXT_DEFENDER_ADVANTAGE 0x3f6 // Defender has the advantage.
#define TXT_SEPARATE_HELIPAD 0x3f7 // Allow separate helipad
#define TXT_PASSWORD_CAPTION 0x3f8 // Password Request
#define TXT_PASSWORD_MESSAGE 0x3f9 // Enter Red Alert access code
#define TXT_PASSWORD_ERROR 0x3fa // Access code error detected.
#define TXT_TRY_AGAIN 0x3fb // Try Again
#define TXT_MINE_AWARE 0x3fc // Friendly units avoid
#define TXT_TRIGGER_EDITOR 0x3fd // Trigger Editor
#define TXT_TRIGGER_JUST_EVENT 0x3fe // Just This Event
#define TXT_TRIGGER_AND 0x3ff // ... and ...
#define TXT_TRIGGER_OR 0x400 // ... or ...
#define TXT_TRIGGER_LINKED 0x401 // ... linked ...
#define TXT_TRIGGER_JUST_ACTION 0x402 // Just This Action
#define TXT_TEAM_EDIT 0x403 // Team Editor
#define TXT_SELLABLE 0x404 // Sellable
#define TXT_REBUILD 0x405 // Rebuild
#define TXT_SPEED_BUILD 0x406 // Building constructin time
#define TXT_SCENARIO_ERRORx 0x407 // Scenario authentication
#define TXT_DEBUG_STRESS 0x408 // ÚFrames:ÄÂF/R:ÂCPU:ÄÄÂF/R:ÄÄ
#define TXT_DEBUG_VEHICLE 0x409 // ÚFull
#define TXT_DEBUG_INFANTRY 0x40a // ÚFull
#define TXT_DEBUG_SHIP 0x40b // ÚFull
#define TXT_DEBUG_BUILDING 0x40c // ÚFull
#define TXT_DEBUG_PERFORMANCE 0x40d // Game Objects³ Drawing
#define TXT_DEBUG_AIRCRAFT 0x40e // ÚFull
#define TXT_DEBUG_HOUSE 0x40f // ÚFull Name:ÄÄÄÄÄÄÄÄÂAct
#define TXT_NO_PENTIUM 0x410 // ****************************
#define TXT_SIZE_MAP 0x411 // Size Map
#define TXT_TRUCK_CRATE 0x412 // Trucks drop crate when
+49
View File
@@ -1088,4 +1088,53 @@ void Enable_Uncompressed_Shapes (void);
*/
void On_Achievement_Event(const HouseClass* player_ptr, const char *achievement_type, const char *achievement_reason);
// jmarshall - editor
#define TXT_CLEAR_MAP 0x3e8 // Clear the map
#define TXT_INHERIT_MAP 0x3e9 // Inherit previous map
#define TXT_SPECIAL_OPTIONS 0x3ea // Select Special Options
#define TXT_VISIBLE_TARGET 0x3eb // Targeting flash visible to
#define TXT_TREE_TARGET 0x3ec // Allow targeting of trees.
#define TXT_MCV_DEPLOY 0x3ed // Allow undeploy of
#define TXT_SMART_DEFENCE 0x3ee // Employ smarter self defense
#define TXT_SLOW_BUILD 0x3ef // Moderate production speed.
#define TXT_THREE_POINT 0x3f0 // Use three point turn logic.
#define TXT_TIBERIUM_GROWTH 0x3f1 // Ore will grow.
#define TXT_TIBERIUM_SPREAD 0x3f2 // Ore will spread.
#define TXT_ROAD_PIECES 0x3f3 // Disable building "bib"
#define TXT_SCATTER 0x3f4 // Allow running from
#define TXT_SHOW_NAMES 0x3f5 // Show true object names.
#define TXT_DEFENDER_ADVANTAGE 0x3f6 // Defender has the advantage.
#define TXT_SEPARATE_HELIPAD 0x3f7 // Allow separate helipad
#define TXT_PASSWORD_CAPTION 0x3f8 // Password Request
#define TXT_PASSWORD_MESSAGE 0x3f9 // Enter Red Alert access code
#define TXT_PASSWORD_ERROR 0x3fa // Access code error detected.
#define TXT_TRY_AGAIN 0x3fb // Try Again
#define TXT_MINE_AWARE 0x3fc // Friendly units avoid
#define TXT_TRIGGER_EDITOR 0x3fd // Trigger Editor
#define TXT_TRIGGER_JUST_EVENT 0x3fe // Just This Event
#define TXT_TRIGGER_AND 0x3ff // ... and ...
#define TXT_TRIGGER_OR 0x400 // ... or ...
#define TXT_TRIGGER_LINKED 0x401 // ... linked ...
#define TXT_TRIGGER_JUST_ACTION 0x402 // Just This Action
#define TXT_TEAM_EDIT 0x403 // Team Editor
#define TXT_SELLABLE 0x404 // Sellable
#define TXT_REBUILD 0x405 // Rebuild
#define TXT_SPEED_BUILD 0x406 // Building constructin time
#define TXT_SCENARIO_ERRORx 0x407 // Scenario authentication
#define TXT_DEBUG_STRESS 0x408 // ÚFrames:ÄÂF/R:ÂCPU:ÄÄÂF/R:ÄÄ
#define TXT_DEBUG_VEHICLE 0x409 // ÚFull
#define TXT_DEBUG_INFANTRY 0x40a // ÚFull
#define TXT_DEBUG_SHIP 0x40b // ÚFull
#define TXT_DEBUG_BUILDING 0x40c // ÚFull
#define TXT_DEBUG_PERFORMANCE 0x40d // Game Objects³ Drawing
#define TXT_DEBUG_AIRCRAFT 0x40e // ÚFull
#define TXT_DEBUG_HOUSE 0x40f // ÚFull Name:ÄÄÄÄÄÄÄÄÂAct
#define TXT_NO_PENTIUM 0x410 // ****************************
#define TXT_SIZE_MAP 0x411 // Size Map
#define TXT_TRUCK_CRATE 0x412 // Trucks drop crate when
extern const int NUM_EDIT_MISSIONS;
#endif
-1
View File
@@ -394,7 +394,6 @@ void GScreenClass::Render(void)
// IsToRedraw = true;
//}
if (IsToUpdate || IsToRedraw) {
BStart(BENCH_GSCREEN_RENDER);
+1 -1
View File
@@ -3591,7 +3591,7 @@ static void Init_Keys(void)
FastKey = ini.Get_PKey(true);
#ifdef SCENARIO_EDITOR
SlowKey = ini.Get_PKey(false);
//SlowKey = ini.Get_PKey(false);
#endif
}
+3 -3
View File
@@ -2574,7 +2574,7 @@ int MapEditClass::Select_Trigger(void)
*/
ControlClass * commands = NULL; // the button list
TListClass<CCPtr<TriggerTypeClass> > triggerlist(TRIGGER_LIST, D_LIST_X, D_LIST_Y, D_LIST_W, D_LIST_H,
TListClass<const TriggerTypeClass *> triggerlist(TRIGGER_LIST, D_LIST_X, D_LIST_Y, D_LIST_W, D_LIST_H,
TPF_EFNT|TPF_NOSHADOW,
MFCD::Retrieve("EBTN-UP.SHP"),
MFCD::Retrieve("EBTN-DN.SHP"));
@@ -2610,7 +2610,7 @@ int MapEditClass::Select_Trigger(void)
if (TriggerTypes.Count()==0) {
CurTrigger = NULL;
} else {
CurTrigger = triggerlist.Current_Item();
CurTrigger = (TriggerTypeClass *)triggerlist.Current_Item();
// if (!CurTrigger) {
// CurTrigger = &*triggerlist.Current_Item();
// }
@@ -2660,7 +2660,7 @@ int MapEditClass::Select_Trigger(void)
*/
switch (input) {
case (TRIGGER_LIST | KN_BUTTON):
CurTrigger = &*triggerlist.Current_Item();
CurTrigger = (TriggerTypeClass *)&*triggerlist.Current_Item();
// CurTrigger = (TriggerTypeClass *)&*triggerlist.Current_Item();
break;
+3 -2
View File
@@ -73,7 +73,7 @@ MissionType MapEditClass::MapEditMissions[] = {
MISSION_HUNT,
MISSION_SLEEP,
};
#define NUM_EDIT_MISSIONS (sizeof(MapEditClass::MapEditMissions) / sizeof(MapEditClass::MapEditMissions[0]))
const int NUM_EDIT_MISSIONS = (sizeof(MapEditClass::MapEditMissions) / sizeof(MapEditClass::MapEditMissions[0]));
/*
@@ -1282,7 +1282,8 @@ void MapEditClass::AI(KeyNumType & input, int x, int y)
/*
** Derive strength from current gauge reading
*/
strength = CurrentObject[0]->Class_Of().MaxStrength * fixed(HealthGauge->Get_Value(), 256);
int val = fixed(HealthGauge->Get_Value(), 256);
strength = CurrentObject[0]->Class_Of().MaxStrength * val;
// strength = Fixed_To_Cardinal((unsigned)CurrentObject[0]->Class_Of().MaxStrength, (unsigned)HealthGauge->Get_Value());
/*
+1
View File
@@ -335,6 +335,7 @@ class MapEditClass : public MouseClass
static char HealthBuf[20];
GaugeClass *BaseGauge;
TextLabelClass *BaseLabel;
public:
static MissionType MapEditMissions[];
};
+4 -4
View File
@@ -251,7 +251,7 @@ int MapEditClass::Select_Team(char const * )
*/
GadgetClass * commands = NULL; // the button list
TListClass<CCPtr<TeamTypeClass> > teamlist (TEAM_LIST,
TListClass<const TeamTypeClass *> teamlist (TEAM_LIST,
D_LIST_X, D_LIST_Y, D_LIST_W, D_LIST_H,
TPF_EFNT | TPF_NOSHADOW,
MFCD::Retrieve("EBTN-UP.SHP"),
@@ -280,11 +280,11 @@ int MapEditClass::Select_Team(char const * )
if (CurTeam) {
teamlist.Set_Selected_Index(CurTeam);
CurTeam = teamlist.Current_Item();
CurTeam = (TeamTypeClass *)teamlist.Current_Item();
} else {
teamlist.Set_Selected_Index(0);
if (TeamTypes.Count()) {
CurTeam = teamlist.Current_Item();
CurTeam = (TeamTypeClass*)teamlist.Current_Item();
}
}
@@ -337,7 +337,7 @@ int MapEditClass::Select_Team(char const * )
*/
switch (input) {
case (TEAM_LIST | KN_BUTTON):
CurTeam = teamlist.Current_Item();
CurTeam = (TeamTypeClass*)teamlist.Current_Item();
break;
case (BUTTON_EDIT | KN_BUTTON):
+3
View File
@@ -42,6 +42,9 @@
#include <sdl.h>
#undef RESFACTOR
#define RESFACTOR (2 + (ScreenWidth / 640))
/*****************************
** Function prototypes
******************************/
+8 -3
View File
@@ -95,13 +95,14 @@
<AdditionalIncludeDirectories>../external/dxsdk/Include;../external/ffmpeg-win32/include;../external/sdl2/include;./win32lib;../external/openal/include</AdditionalIncludeDirectories>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
<WholeProgramOptimization>false</WholeProgramOptimization>
<PreprocessorDefinitions>WINDOWS_IGNORE_PACKING_MISMATCH;TRUE_FALSE_DEFINED;ENGLISH;WIN32;NDEBUG;_WINDOWS;_USRDLL;REDALERT_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions>SCENARIO_EDITOR;WINDOWS_IGNORE_PACKING_MISMATCH;TRUE_FALSE_DEFINED;ENGLISH;WIN32;NDEBUG;_WINDOWS;_USRDLL;REDALERT_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StructMemberAlignment>1Byte</StructMemberAlignment>
<ExceptionHandling>false</ExceptionHandling>
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
<DisableSpecificWarnings>4800;4244;4996</DisableSpecificWarnings>
<BufferSecurityCheck>false</BufferSecurityCheck>
<TreatWarningAsError>false</TreatWarningAsError>
<ForceConformanceInForLoopScope>false</ForceConformanceInForLoopScope>
</ClCompile>
<Link>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
@@ -124,12 +125,13 @@
<SDLCheck>false</SDLCheck>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
<PreprocessorDefinitions>WINDOWS_IGNORE_PACKING_MISMATCH;TRUE_FALSE_DEFINED;ENGLISH;WIN32;_DEBUG;_WINDOWS;_USRDLL;REDALERT_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions>SCENARIO_EDITOR;WINDOWS_IGNORE_PACKING_MISMATCH;TRUE_FALSE_DEFINED;ENGLISH;WIN32;_DEBUG;_WINDOWS;_USRDLL;REDALERT_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<ExceptionHandling>false</ExceptionHandling>
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
<StructMemberAlignment>1Byte</StructMemberAlignment>
<DisableSpecificWarnings>4800;4244;4996</DisableSpecificWarnings>
<TreatWarningAsError>false</TreatWarningAsError>
<ForceConformanceInForLoopScope>false</ForceConformanceInForLoopScope>
</ClCompile>
<Link>
<AdditionalDependencies>d3d9.lib;winmm.lib;Ws2_32.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -314,7 +316,10 @@
<ClCompile Include="MAPEDDLG.CPP" />
<ClCompile Include="MAPEDIT.CPP" />
<ClCompile Include="MAPEDPLC.CPP" />
<ClCompile Include="MAPEDSEL.CPP" />
<ClCompile Include="MAPEDSEL.CPP">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="MAPEDTM.CPP" />
<ClCompile Include="MAPSEL.CPP" />
<ClCompile Include="MCI.CPP" />
+4 -4
View File
@@ -613,7 +613,7 @@ NeedType TeamMission_Needs(TeamMissionType tmtype)
* HISTORY: *
* 01/05/1996 JLB : Created. *
*=============================================================================================*/
void TeamMissionClass::Draw_It(int index, int x, int y, int width, int height, bool selected, TextPrintType flags)
void TeamMissionClass::Draw_It(int index, int x, int y, int width, int height, bool selected, TextPrintType flags) const
{
RemapControlType * scheme = GadgetClass::Get_Color_Scheme();
static int _tabs[] = {13,40};
@@ -937,7 +937,7 @@ bool TeamTypeClass::Edit(void)
mlist.Set_Selected_Index(0);
mlist.Add_Tail(*commands);
TListClass<TeamMissionClass *> missionlist2(BUTTON_MISSION2, missionlist1.X+60, missionlist1.Y+22, 240, 8*7,
TListClass<const TeamMissionClass *> missionlist2(BUTTON_MISSION2, missionlist1.X+60, missionlist1.Y+22, 240, 8*7,
TPF_EFNT | TPF_NOSHADOW,
MFCD::Retrieve("EBTN-UP.SHP"),
MFCD::Retrieve("EBTN-DN.SHP"));
@@ -1225,7 +1225,7 @@ bool TeamTypeClass::Edit(void)
*/
case BUTTON_REPLACE | KN_BUTTON:
if (missionlist2.Count()) {
TeamMissionClass * tm = missionlist2.Current_Item();
TeamMissionClass * tm = (TeamMissionClass *)missionlist2.Current_Item();
tm->Mission = TeamMissionType(missionlist1.Current_Index());
tm->Data.Value = 0;
switch (TeamMission_Needs(tm->Mission)) {
@@ -1274,7 +1274,7 @@ bool TeamTypeClass::Edit(void)
*/
case BUTTON_DELETE | KN_BUTTON:
if (missionlist2.Count()) {
TeamMissionClass * tm = missionlist2.Current_Item();
TeamMissionClass * tm = (TeamMissionClass*)missionlist2.Current_Item();
missionlist2.Remove_Index(missionlist2.Current_Index());
delete tm;
}
+1 -1
View File
@@ -79,7 +79,7 @@ class TeamMissionClass
char const * Description(int index) const;
operator const char * () const {return(Description(0));};
#endif
void Draw_It(int index, int x, int y, int width, int height, bool selected, TextPrintType flags);
void Draw_It(int index, int x, int y, int width, int height, bool selected, TextPrintType flags) const;
TeamMissionType Mission; // Mission type.
union {
+1 -6
View File
@@ -32,9 +32,7 @@
* Functions: *
* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
#ifndef TEVENT_H
#define TEVENT_H
#pragma once
/*
** These are the trigger events that are checked for and if qualified, they will signal
@@ -180,6 +178,3 @@ class EventChoiceClass {
};
extern EventChoiceClass EventChoices[TEVENT_COUNT];
#endif
+1533 -1498
View File
File diff suppressed because it is too large Load Diff
+1 -4
View File
@@ -33,8 +33,7 @@
* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
#ifndef TRIGTYPE_H
#define TRIGTYPE_H
#pragma once
#include "tevent.h"
#include "taction.h"
@@ -145,5 +144,3 @@ class TriggerTypeClass : public AbstractTypeClass
void Draw_It(int index, int x, int y, int width, int height, bool selected, TextPrintType flags) const;
};
#endif
+1 -13
View File
@@ -47,17 +47,7 @@
* DynamicVectorClass<T>::ID -- Find matching value in the dynamic vector. *
* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
#ifndef VECTOR_H
#define VECTOR_H
#ifdef NEVER
#ifndef false
#define false 0
#endif
#ifndef true
#define true 1
#endif
#endif
#pragma once
#include <stdlib.h>
#include <stddef.h>
@@ -1008,5 +998,3 @@ int VectorClass<T>::Resize(unsigned newsize, T const * array)
}
return(true);
}
#endif
+1 -1
View File
@@ -872,7 +872,7 @@ void Load_Title_Screen(char *name, GraphicViewPortClass *video_page, unsigned ch
load_buffer = Read_PCX_File (name, (char*)palette, NULL, 0);
if (load_buffer) {
load_buffer->Blit(*video_page);
load_buffer->Scale(*video_page, 0, 0, 0, 0, load_buffer->Get_Width(), load_buffer->Get_Height(), ScreenWidth, ScreenHeight, NULL);
delete load_buffer;
}
}