This commit is contained in:
parent
aaa262218e
commit
a19fb1096a
11 changed files with 195 additions and 92 deletions
|
@ -416,6 +416,29 @@ float ScaleU,ScaleV;
|
|||
}
|
||||
|
||||
/*****************************************************************************/
|
||||
struct sColTab
|
||||
{
|
||||
u8 R,G,B;
|
||||
};
|
||||
sColTab ColTable[]=
|
||||
{
|
||||
{255,255,255}, // PC_TILE_COLLISION_NORMAL:
|
||||
{255, 0, 0}, // PC_TILE_COLLISION_DAMAGE:
|
||||
{ 0,255, 0}, // PC_TILE_COLLISION_SLIPPERY:
|
||||
{255, 0,255}, // PC_TILE_COLLISION_ELECTRIC:
|
||||
{200,127,180}, // PC_TILE_COLLISION_DESTRUCTABLE_WALL:
|
||||
{ 0, 0,255}, // PC_TILE_COLLISION_DEATH_LIQUID:
|
||||
{ 0,255,255}, // PC_TILE_COLLISION_SOLID:
|
||||
{200, 0, 0}, // PC_TILE_COLLISION_DEATH_FALL:
|
||||
{127,200,180}, // PC_TILE_COLLISION_DESTRUCTABLE_FLOOR:
|
||||
{255,127,127}, // PC_TILE_COLLISION_DEATH_INSTANT:
|
||||
|
||||
{ 0,127, 0}, // PC_TILE_COLLISION_MOVE_LEFT:
|
||||
{ 0,127,127}, // PC_TILE_COLLISION_MOVE_RIGHT:
|
||||
|
||||
|
||||
};
|
||||
|
||||
void CElem::Render(int Flags,bool Render3d)
|
||||
{
|
||||
if (BlankFlag)
|
||||
|
@ -440,18 +463,27 @@ int ColFlags=Flags >> PC_TILE_FLAG_COLLISION_SHIFT;
|
|||
|
||||
if (ColFlags)
|
||||
{
|
||||
/*
|
||||
switch (ColFlags)
|
||||
{
|
||||
case PC_TILE_COLLISION_NORMAL: glColor4f(1.0f,1.0f,1.0f,0.5); break;
|
||||
case PC_TILE_COLLISION_DAMAGE: glColor4f(1.0f,0.0f,0.0f,0.5); break;
|
||||
case PC_TILE_COLLISION_SLIPPERY: glColor4f(0.0f,1.0f,0.0f,0.5); break;
|
||||
case PC_TILE_COLLISION_ELECTRIC: glColor4f(1.0f,0.0f,1.0f,0.5); break;
|
||||
case PC_TILE_COLLISION_STICKY: glColor4f(1.0f,1.0f,0.0f,0.5); break;
|
||||
case PC_TILE_COLLISION_WATER: glColor4f(0.0f,0.0f,1.0f,0.5); break;
|
||||
case PC_TILE_COLLISION_SOLID: glColor4f(0.0f,1.0f,1.0f,0.5); break;
|
||||
case PC_TILE_COLLISION_DEATH: glColor4f(0.0f,0.5f,0.5f,0.5); break;
|
||||
case PC_TILE_COLLISION_DESTRUCTABLE:glColor4f(0.5f,0.7f,0.6f,0.5); break;
|
||||
case PC_TILE_COLLISION_SLIPPERY: glColor4f(0.0f,1.0f,0.0f,0.5); break;
|
||||
case PC_TILE_COLLISION_MOVE_LEFT: glColor4f(0.5f,1.0f,0.0f,0.5); break;
|
||||
case PC_TILE_COLLISION_MOVE_RIGHT: glColor4f(0.0f,1.0f,0.5f,0.5); break;
|
||||
|
||||
case PC_TILE_COLLISION_DAMAGE: glColor4f(1.0f,0.0f,0.0f,0.5); break;
|
||||
case PC_TILE_COLLISION_ELECTRIC: glColor4f(1.0f,0.0f,1.0f,0.5); break;
|
||||
case PC_TILE_COLLISION_DEATH_LIQUID: glColor4f(0.0f,0.0f,1.0f,0.5); break;
|
||||
case PC_TILE_COLLISION_DEATH_FALL: glColor4f(0.0f,0.5f,0.5f,0.5); break;
|
||||
case PC_TILE_COLLISION_DEATH_INSTANT: glColor4f(0.1f,0.5f,0.5f,0.5); break;
|
||||
|
||||
case PC_TILE_COLLISION_DESTRUCTABLE_WALL: glColor4f(0.7f,0.5f,0.6f,0.5); break;
|
||||
case PC_TILE_COLLISION_DESTRUCTABLE_FLOOR: glColor4f(0.5f,0.7f,0.6f,0.5); break;
|
||||
}
|
||||
*/
|
||||
sColTab &ThisCol=ColTable[ColFlags];
|
||||
glColor4ub(ThisCol.R,ThisCol.G,ThisCol.B,127);
|
||||
}
|
||||
glEnable(GL_TEXTURE_2D);
|
||||
if (Render3d)
|
||||
|
|
|
@ -38,15 +38,18 @@ void GUILayerCollision::DoDataExchange(CDataExchange* pDX)
|
|||
|
||||
BEGIN_MESSAGE_MAP(GUILayerCollision, CDialog)
|
||||
//{{AFX_MSG_MAP(GUILayerCollision)
|
||||
ON_BN_CLICKED(IDC_LAYERCOLLISION_NORMAL, OnLayercollisionNormal)
|
||||
ON_BN_CLICKED(IDC_LAYERCOLLISION_DAMAGE, OnLayercollisionDamage)
|
||||
ON_BN_CLICKED(IDC_LAYERCOLLISION_SLIPPERY, OnLayercollisionSlippery)
|
||||
ON_BN_CLICKED(IDC_LAYERCOLLISION_DEATH_FALL, OnLayercollisionDeathFall)
|
||||
ON_BN_CLICKED(IDC_LAYERCOLLISION_DEATH_INSTANT, OnLayercollisionDeathInstant)
|
||||
ON_BN_CLICKED(IDC_LAYERCOLLISION_DEATH_LIQUID, OnLayercollisionDeathLiquid)
|
||||
ON_BN_CLICKED(IDC_LAYERCOLLISION_DESTRUCT_FLOOR, OnLayercollisionDestructFloor)
|
||||
ON_BN_CLICKED(IDC_LAYERCOLLISION_DESTRUCT_WALL, OnLayercollisionDestructWall)
|
||||
ON_BN_CLICKED(IDC_LAYERCOLLISION_ELECTRIC, OnLayercollisionElectric)
|
||||
ON_BN_CLICKED(IDC_LAYERCOLLISION_STICKY, OnLayercollisionSticky)
|
||||
ON_BN_CLICKED(IDC_LAYERCOLLISION_WATER, OnLayercollisionWater)
|
||||
ON_BN_CLICKED(IDC_LAYERCOLLISION_MOVE_LEFT, OnLayercollisionMoveLeft)
|
||||
ON_BN_CLICKED(IDC_LAYERCOLLISION_MOVE_RIGHT, OnLayercollisionMoveRight)
|
||||
ON_BN_CLICKED(IDC_LAYERCOLLISION_NORMAL, OnLayercollisionNormal)
|
||||
ON_BN_CLICKED(IDC_LAYERCOLLISION_SLIPPERY, OnLayercollisionSlippery)
|
||||
ON_BN_CLICKED(IDC_LAYERCOLLISION_SOLID, OnLayercollisionSolid)
|
||||
ON_BN_CLICKED(IDC_LAYERCOLLISION_DEATH, OnLayercollisionDeath)
|
||||
ON_BN_CLICKED(IDC_LAYERCOLLISION_DESTRUCTABLE, OnLayercollisionDestructable)
|
||||
//}}AFX_MSG_MAP
|
||||
END_MESSAGE_MAP()
|
||||
|
||||
|
@ -54,12 +57,28 @@ END_MESSAGE_MAP()
|
|||
// GUILayerCollision message handlers
|
||||
|
||||
void GUILayerCollision::OnLayercollisionNormal() {theApp.GetCurrent()->Command(CmdMsg_SetColFlag,PC_TILE_COLLISION_NORMAL);}
|
||||
void GUILayerCollision::OnLayercollisionDamage() {theApp.GetCurrent()->Command(CmdMsg_SetColFlag,PC_TILE_COLLISION_DAMAGE);}
|
||||
void GUILayerCollision::OnLayercollisionSlippery() {theApp.GetCurrent()->Command(CmdMsg_SetColFlag,PC_TILE_COLLISION_SLIPPERY);}
|
||||
void GUILayerCollision::OnLayercollisionElectric() {theApp.GetCurrent()->Command(CmdMsg_SetColFlag,PC_TILE_COLLISION_ELECTRIC);}
|
||||
void GUILayerCollision::OnLayercollisionSticky() {theApp.GetCurrent()->Command(CmdMsg_SetColFlag,PC_TILE_COLLISION_STICKY);}
|
||||
void GUILayerCollision::OnLayercollisionWater() {theApp.GetCurrent()->Command(CmdMsg_SetColFlag,PC_TILE_COLLISION_WATER);}
|
||||
void GUILayerCollision::OnLayercollisionSolid() {theApp.GetCurrent()->Command(CmdMsg_SetColFlag,PC_TILE_COLLISION_SOLID);}
|
||||
void GUILayerCollision::OnLayercollisionDeath() {theApp.GetCurrent()->Command(CmdMsg_SetColFlag,PC_TILE_COLLISION_DEATH);}
|
||||
void GUILayerCollision::OnLayercollisionDestructable() {theApp.GetCurrent()->Command(CmdMsg_SetColFlag,PC_TILE_COLLISION_DESTRUCTABLE);}
|
||||
void GUILayerCollision::OnLayercollisionSlippery() {theApp.GetCurrent()->Command(CmdMsg_SetColFlag,PC_TILE_COLLISION_SLIPPERY);}
|
||||
void GUILayerCollision::OnLayercollisionMoveLeft() {theApp.GetCurrent()->Command(CmdMsg_SetColFlag,PC_TILE_COLLISION_MOVE_LEFT);}
|
||||
void GUILayerCollision::OnLayercollisionMoveRight() {theApp.GetCurrent()->Command(CmdMsg_SetColFlag,PC_TILE_COLLISION_MOVE_RIGHT);}
|
||||
|
||||
void GUILayerCollision::OnLayercollisionDamage() {theApp.GetCurrent()->Command(CmdMsg_SetColFlag,PC_TILE_COLLISION_DAMAGE);}
|
||||
void GUILayerCollision::OnLayercollisionElectric() {theApp.GetCurrent()->Command(CmdMsg_SetColFlag,PC_TILE_COLLISION_ELECTRIC);}
|
||||
void GUILayerCollision::OnLayercollisionDeathLiquid() {theApp.GetCurrent()->Command(CmdMsg_SetColFlag,PC_TILE_COLLISION_DEATH_LIQUID);}
|
||||
void GUILayerCollision::OnLayercollisionDeathFall() {theApp.GetCurrent()->Command(CmdMsg_SetColFlag,PC_TILE_COLLISION_DEATH_FALL);}
|
||||
void GUILayerCollision::OnLayercollisionDeathInstant() {theApp.GetCurrent()->Command(CmdMsg_SetColFlag,PC_TILE_COLLISION_DEATH_INSTANT);}
|
||||
|
||||
void GUILayerCollision::OnLayercollisionDestructWall() {theApp.GetCurrent()->Command(CmdMsg_SetColFlag,PC_TILE_COLLISION_DESTRUCTABLE_WALL);}
|
||||
void GUILayerCollision::OnLayercollisionDestructFloor() {theApp.GetCurrent()->Command(CmdMsg_SetColFlag,PC_TILE_COLLISION_DESTRUCTABLE_FLOOR);}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -35,15 +35,18 @@ protected:
|
|||
|
||||
// Generated message map functions
|
||||
//{{AFX_MSG(GUILayerCollision)
|
||||
afx_msg void OnLayercollisionNormal();
|
||||
afx_msg void OnLayercollisionDamage();
|
||||
afx_msg void OnLayercollisionSlippery();
|
||||
afx_msg void OnLayercollisionDeathFall();
|
||||
afx_msg void OnLayercollisionDeathInstant();
|
||||
afx_msg void OnLayercollisionDeathLiquid();
|
||||
afx_msg void OnLayercollisionDestructFloor();
|
||||
afx_msg void OnLayercollisionDestructWall();
|
||||
afx_msg void OnLayercollisionElectric();
|
||||
afx_msg void OnLayercollisionSticky();
|
||||
afx_msg void OnLayercollisionWater();
|
||||
afx_msg void OnLayercollisionMoveLeft();
|
||||
afx_msg void OnLayercollisionMoveRight();
|
||||
afx_msg void OnLayercollisionNormal();
|
||||
afx_msg void OnLayercollisionSlippery();
|
||||
afx_msg void OnLayercollisionSolid();
|
||||
afx_msg void OnLayercollisionDeath();
|
||||
afx_msg void OnLayercollisionDestructable();
|
||||
//}}AFX_MSG
|
||||
DECLARE_MESSAGE_MAP()
|
||||
};
|
||||
|
|
|
@ -50,22 +50,30 @@ enum TILE_FLAG
|
|||
PC_TILE_COLLISION_DAMAGE =1,
|
||||
PC_TILE_COLLISION_SLIPPERY =2,
|
||||
PC_TILE_COLLISION_ELECTRIC =3,
|
||||
PC_TILE_COLLISION_STICKY =4,
|
||||
PC_TILE_COLLISION_WATER =5,
|
||||
PC_TILE_COLLISION_DESTRUCTABLE_WALL =4,
|
||||
PC_TILE_COLLISION_DEATH_LIQUID =5,
|
||||
PC_TILE_COLLISION_SOLID =6,
|
||||
PC_TILE_COLLISION_DEATH =7,
|
||||
PC_TILE_COLLISION_DESTRUCTABLE =8,
|
||||
PC_TILE_COLLISION_DEATH_FALL =7,
|
||||
PC_TILE_COLLISION_DESTRUCTABLE_FLOOR =8,
|
||||
PC_TILE_COLLISION_DEATH_INSTANT =9,
|
||||
PC_TILE_COLLISION_MOVE_LEFT =10,
|
||||
PC_TILE_COLLISION_MOVE_RIGHT =11,
|
||||
|
||||
PC_TILE_FLAG_COLLISION_SHIFT =2,
|
||||
PC_TILE_FLAG_COLLISION_NORMAL =PC_TILE_COLLISION_NORMAL<<PC_TILE_FLAG_COLLISION_SHIFT,
|
||||
PC_TILE_FLAG_COLLISION_DAMAGE =PC_TILE_COLLISION_DAMAGE<<PC_TILE_FLAG_COLLISION_SHIFT,
|
||||
PC_TILE_FLAG_COLLISION_SLIPPERY =PC_TILE_COLLISION_SLIPPERY<<PC_TILE_FLAG_COLLISION_SHIFT,
|
||||
PC_TILE_FLAG_COLLISION_ELECTRIC =PC_TILE_COLLISION_ELECTRIC<<PC_TILE_FLAG_COLLISION_SHIFT,
|
||||
PC_TILE_FLAG_COLLISION_STICKY =PC_TILE_COLLISION_STICKY<<PC_TILE_FLAG_COLLISION_SHIFT,
|
||||
PC_TILE_FLAG_COLLISION_WATER =PC_TILE_COLLISION_WATER<<PC_TILE_FLAG_COLLISION_SHIFT,
|
||||
PC_TILE_FLAG_COLLISION_SOLID =PC_TILE_COLLISION_SOLID<<PC_TILE_FLAG_COLLISION_SHIFT,
|
||||
PC_TILE_FLAG_COLLISION_DEATH =PC_TILE_COLLISION_DEATH<<PC_TILE_FLAG_COLLISION_SHIFT,
|
||||
PC_TILE_FLAG_COLLISION_DESTRUCTABLE =PC_TILE_COLLISION_DESTRUCTABLE<<PC_TILE_FLAG_COLLISION_SHIFT,
|
||||
PC_TILE_FLAG_COLLISION_SLIPPERY =PC_TILE_COLLISION_SLIPPERY<<PC_TILE_FLAG_COLLISION_SHIFT,
|
||||
PC_TILE_FLAG_COLLISION_MOVE_LEFT =PC_TILE_COLLISION_MOVE_LEFT<<PC_TILE_FLAG_COLLISION_SHIFT,
|
||||
PC_TILE_FLAG_COLLISION_MOVE_RIGHT =PC_TILE_COLLISION_MOVE_RIGHT<<PC_TILE_FLAG_COLLISION_SHIFT,
|
||||
|
||||
PC_TILE_FLAG_COLLISION_DAMAGE =PC_TILE_COLLISION_DAMAGE<<PC_TILE_FLAG_COLLISION_SHIFT,
|
||||
PC_TILE_FLAG_COLLISION_ELECTRIC =PC_TILE_COLLISION_ELECTRIC<<PC_TILE_FLAG_COLLISION_SHIFT,
|
||||
PC_TILE_FLAG_COLLISION_DEATH_LIQUID =PC_TILE_COLLISION_DEATH_LIQUID<<PC_TILE_FLAG_COLLISION_SHIFT,
|
||||
PC_TILE_FLAG_COLLISION_DEATH_FALL =PC_TILE_COLLISION_DEATH_FALL<<PC_TILE_FLAG_COLLISION_SHIFT,
|
||||
PC_TILE_FLAG_COLLISION_DEATH_INSTANT =PC_TILE_COLLISION_DEATH_INSTANT<<PC_TILE_FLAG_COLLISION_SHIFT,
|
||||
|
||||
PC_TILE_FLAG_COLLISION_DESTRUCTABLE_WALL =PC_TILE_COLLISION_DESTRUCTABLE_WALL<<PC_TILE_FLAG_COLLISION_SHIFT,
|
||||
PC_TILE_FLAG_COLLISION_DESTRUCTABLE_FLOOR =PC_TILE_COLLISION_DESTRUCTABLE_FLOOR<<PC_TILE_FLAG_COLLISION_SHIFT,
|
||||
|
||||
PC_TILE_FLAG_COLLISION_MASK = ~PC_TILE_FLAG_MIRROR_XY,
|
||||
};
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
[General Info]
|
||||
Version=1
|
||||
LastClass=CMapEditDoc
|
||||
LastClass=GUILayerCollision
|
||||
LastTemplate=CDialog
|
||||
NewFileInclude1=#include "stdafx.h"
|
||||
NewFileInclude2=#include "mapedit.h"
|
||||
|
@ -37,27 +37,27 @@ Class25=CMapEditDoc
|
|||
Class26=CMapEditView
|
||||
|
||||
ResourceCount=21
|
||||
Resource1=IDD_LAYER_COLLISION
|
||||
Resource2=IDD_LAYER_THING_POS
|
||||
Resource3=IDD_MULTIBAR (English (U.S.))
|
||||
Resource4=IDD_LAYER_THING
|
||||
Resource5=IDD_RESIZE
|
||||
Resource6=IDD_ADDLAYER
|
||||
Resource7=IDD_LAYER_SHADE
|
||||
Resource8=IDD_TILEBANK
|
||||
Resource9=IDD_LAYER_TRIGGER
|
||||
Resource10=IDD_LAYER_PLATFORM
|
||||
Resource1=IDD_LAYER_PLATFORM
|
||||
Resource2=IDR_MAINFRAME (English (U.S.))
|
||||
Resource3=IDD_TILEBANK
|
||||
Resource4=IDR_TOOLBAR (English (U.S.))
|
||||
Resource5=IDD_LAYER_SHADE
|
||||
Resource6=IDD_ELEMLIST
|
||||
Resource7=IDD_LAYER_THING_POS
|
||||
Resource8=IDD_LAYER_ACTOR
|
||||
Resource9=IDD_LAYER_COLLISION
|
||||
Resource10=IDD_ABOUTBOX (English (U.S.))
|
||||
Resource11=IDR_MAPEDITYPE (English (U.S.))
|
||||
Resource12=IDD_TOOLBAR
|
||||
Resource13=IDD_LAYER_LIST
|
||||
Resource14=IDD_ABOUTBOX (English (U.S.))
|
||||
Resource15=IDD_LAYER_ACTOR
|
||||
Resource16=IDD_NEWMAP
|
||||
Resource17=IDD_LAYER_FX
|
||||
Resource18=IDD_ELEMLIST
|
||||
Resource19=IDD_LAYER_HAZARD
|
||||
Resource20=IDR_MAINFRAME (English (U.S.))
|
||||
Resource21=IDR_TOOLBAR (English (U.S.))
|
||||
Resource12=IDD_LAYER_THING
|
||||
Resource13=IDD_TOOLBAR
|
||||
Resource14=IDD_LAYER_FX
|
||||
Resource15=IDD_ADDLAYER
|
||||
Resource16=IDD_MULTIBAR (English (U.S.))
|
||||
Resource17=IDD_LAYER_LIST
|
||||
Resource18=IDD_LAYER_TRIGGER
|
||||
Resource19=IDD_RESIZE
|
||||
Resource20=IDD_NEWMAP
|
||||
Resource21=IDD_LAYER_HAZARD
|
||||
|
||||
[CLS:CChildFrame]
|
||||
Type=0
|
||||
|
@ -94,7 +94,7 @@ Type=0
|
|||
BaseClass=CDialog
|
||||
HeaderFile=GUILayerCollision.h
|
||||
ImplementationFile=GUILayerCollision.cpp
|
||||
LastObject=GUILayerCollision
|
||||
LastObject=IDC_LAYERCOLLISION_SOLID
|
||||
Filter=D
|
||||
VirtualFilter=dWC
|
||||
|
||||
|
@ -270,16 +270,19 @@ Control14=IDC_ACTOR_COLLISION,button,1342243363
|
|||
[DLG:IDD_LAYER_COLLISION]
|
||||
Type=1
|
||||
Class=GUILayerCollision
|
||||
ControlCount=9
|
||||
ControlCount=12
|
||||
Control1=IDC_LAYERCOLLISION_NORMAL,button,1342242816
|
||||
Control2=IDC_LAYERCOLLISION_DAMAGE,button,1342242816
|
||||
Control3=IDC_LAYERCOLLISION_SLIPPERY,button,1342242816
|
||||
Control4=IDC_LAYERCOLLISION_ELECTRIC,button,1342242816
|
||||
Control5=IDC_LAYERCOLLISION_STICKY,button,1342242816
|
||||
Control6=IDC_LAYERCOLLISION_WATER,button,1342242816
|
||||
Control5=IDC_LAYERCOLLISION_DESTRUCT_WALL,button,1342242816
|
||||
Control6=IDC_LAYERCOLLISION_DEATH_LIQUID,button,1342242816
|
||||
Control7=IDC_LAYERCOLLISION_SOLID,button,1342242816
|
||||
Control8=IDC_LAYERCOLLISION_DEATH,button,1342242816
|
||||
Control9=IDC_LAYERCOLLISION_DESTRUCTABLE,button,1342242816
|
||||
Control8=IDC_LAYERCOLLISION_DEATH_FALL,button,1342242816
|
||||
Control9=IDC_LAYERCOLLISION_DESTRUCT_FLOOR,button,1342242816
|
||||
Control10=IDC_LAYERCOLLISION_MOVE_LEFT,button,1342242816
|
||||
Control11=IDC_LAYERCOLLISION_MOVE_RIGHT,button,1342242816
|
||||
Control12=IDC_LAYERCOLLISION_DEATH_INSTANT,button,1342242816
|
||||
|
||||
[DLG:IDD_LAYER_FX]
|
||||
Type=1
|
||||
|
|
|
@ -508,7 +508,7 @@ END
|
|||
IDD_ADDLAYER DIALOGEX 0, 0, 118, 130
|
||||
STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION
|
||||
CAPTION "Select Layer To Add."
|
||||
FONT 8, "MS Sans Serif"
|
||||
FONT 8, "MS Sans Serif", 0, 0, 0x1
|
||||
BEGIN
|
||||
DEFPUSHBUTTON "OK",IDOK,60,110,50,14
|
||||
PUSHBUTTON "Cancel",IDCANCEL,5,110,50,14
|
||||
|
@ -660,20 +660,26 @@ BEGIN
|
|||
COMBOBOX IDC_LAYERSHADE_DEF_LIST,5,85,145,100,CBS_DROPDOWNLIST
|
||||
END
|
||||
|
||||
IDD_LAYER_COLLISION DIALOG DISCARDABLE 0, 0, 156, 41
|
||||
IDD_LAYER_COLLISION DIALOG DISCARDABLE 0, 0, 156, 71
|
||||
STYLE WS_CHILD
|
||||
FONT 8, "MS Sans Serif"
|
||||
BEGIN
|
||||
PUSHBUTTON "Normal",IDC_LAYERCOLLISION_NORMAL,0,5,50,10
|
||||
PUSHBUTTON "Damage",IDC_LAYERCOLLISION_DAMAGE,50,5,50,10
|
||||
PUSHBUTTON "Damage",IDC_LAYERCOLLISION_DAMAGE,0,30,50,10
|
||||
PUSHBUTTON "Slippery",IDC_LAYERCOLLISION_SLIPPERY,100,5,50,10
|
||||
PUSHBUTTON "Electric",IDC_LAYERCOLLISION_ELECTRIC,0,15,50,10
|
||||
PUSHBUTTON "Sticky",IDC_LAYERCOLLISION_STICKY,50,15,50,10
|
||||
PUSHBUTTON "Water",IDC_LAYERCOLLISION_WATER,100,15,50,10
|
||||
PUSHBUTTON "Solid",IDC_LAYERCOLLISION_SOLID,0,25,50,10
|
||||
PUSHBUTTON "Death",IDC_LAYERCOLLISION_DEATH,50,25,50,10
|
||||
PUSHBUTTON "Destructable",IDC_LAYERCOLLISION_DESTRUCTABLE,100,25,50,
|
||||
PUSHBUTTON "Electric",IDC_LAYERCOLLISION_ELECTRIC,50,30,50,10
|
||||
PUSHBUTTON "Destroy Wall",IDC_LAYERCOLLISION_DESTRUCT_WALL,0,55,50,
|
||||
10
|
||||
PUSHBUTTON "Death Liquid",IDC_LAYERCOLLISION_DEATH_LIQUID,0,40,50,
|
||||
10
|
||||
PUSHBUTTON "Solid",IDC_LAYERCOLLISION_SOLID,50,5,50,10
|
||||
PUSHBUTTON "Death Fall",IDC_LAYERCOLLISION_DEATH_FALL,50,40,50,10
|
||||
PUSHBUTTON "Destroy Floor",IDC_LAYERCOLLISION_DESTRUCT_FLOOR,50,55,
|
||||
50,10
|
||||
PUSHBUTTON "Move Left",IDC_LAYERCOLLISION_MOVE_LEFT,0,15,50,10
|
||||
PUSHBUTTON "Move Right",IDC_LAYERCOLLISION_MOVE_RIGHT,50,15,50,10
|
||||
PUSHBUTTON "Death Instant",IDC_LAYERCOLLISION_DEATH_INSTANT,100,40,
|
||||
50,10
|
||||
END
|
||||
|
||||
IDD_ELEMLIST DIALOG DISCARDABLE 0, 0, 156, 26
|
||||
|
@ -939,7 +945,7 @@ BEGIN
|
|||
LEFTMARGIN, 7
|
||||
RIGHTMARGIN, 149
|
||||
TOPMARGIN, 7
|
||||
BOTTOMMARGIN, 34
|
||||
BOTTOMMARGIN, 64
|
||||
END
|
||||
|
||||
IDD_ELEMLIST, DIALOG
|
||||
|
|
|
@ -75,9 +75,11 @@
|
|||
#define IDC_LAYERSHADE_XYTEXT2 1084
|
||||
#define IDC_LAYERCOLLISION_STICKY 1085
|
||||
#define IDC_LAYERSHADE_XYTEXT3 1085
|
||||
#define IDC_LAYERCOLLISION_DESTRUCT_WALL 1085
|
||||
#define IDC_LAYERSHADE_TEXT7 1086
|
||||
#define IDC_LAYERCOLLISION_WATER 1086
|
||||
#define IDC_ACTOR_SPEED_TEXT 1086
|
||||
#define IDC_LAYERCOLLISION_DEATH_LIQUID 1086
|
||||
#define IDC_LAYERSHADE_EDITR3 1087
|
||||
#define IDC_LAYERCOLLISION_SOLID 1087
|
||||
#define IDC_ACTOR_SPEED 1087
|
||||
|
@ -85,13 +87,18 @@
|
|||
#define IDC_LAYERSHADE_EDITG3 1088
|
||||
#define IDC_LAYERCOLLISION_DEATH 1088
|
||||
#define IDC_LAYERSHADE_SHADEG3 1088
|
||||
#define IDC_LAYERCOLLISION_DEATH_FALL 1088
|
||||
#define IDC_LAYERSHADE_EDITB3 1089
|
||||
#define IDC_LAYERSHADE_SHADEB3 1089
|
||||
#define IDC_LAYERCOLLISION_DESTRUCTABLE 1089
|
||||
#define IDC_LAYERCOLLISION_DESTRUCT_FLOOR 1089
|
||||
#define IDC_LAYERSHADE_TRANSTEXT 1090
|
||||
#define IDC_LAYERCOLLISION_MOVE_LEFT 1090
|
||||
#define IDC_LAYERSHADE_GFXR0 1091
|
||||
#define IDC_LAYERCOLLISION_MOVE_RIGHT 1091
|
||||
#define IDC_ACTOR_SPEED_SPIN 1092
|
||||
#define IDC_LAYERSHADE_GFXG0 1092
|
||||
#define IDC_LAYERCOLLISION_DEATH_INSTANT 1092
|
||||
#define IDC_LAYERSHADE_GFXB0 1093
|
||||
#define IDC_ACTOR_PLAYER 1094
|
||||
#define IDC_LAYERSHADE_GFXR1 1094
|
||||
|
|
|
@ -66,6 +66,27 @@ void CMkLevelLayerCollision::Process(CMkLevel *Core)
|
|||
/** Write ********************************************************************/
|
||||
/*****************************************************************************/
|
||||
/*****************************************************************************/
|
||||
static const u8 s_collisionTileRemapTable[17]=
|
||||
{
|
||||
0,
|
||||
1,
|
||||
1,
|
||||
1,
|
||||
1,
|
||||
2,
|
||||
3,
|
||||
0,
|
||||
0,
|
||||
4,
|
||||
5,
|
||||
0,
|
||||
0,
|
||||
6,
|
||||
7,
|
||||
0,
|
||||
0,
|
||||
};
|
||||
|
||||
int CMkLevelLayerCollision::Write(FILE *File,const char *LayerName,const char *MapName)
|
||||
{
|
||||
sLayerHdr Hdr;
|
||||
|
@ -86,7 +107,7 @@ int Height=Map.GetHeight();
|
|||
sExpColTile &ThisElem=Map.Get(X,Y);
|
||||
u8 OutElem;
|
||||
|
||||
OutElem=ThisElem.Tile;
|
||||
OutElem=s_collisionTileRemapTable[ThisElem.Tile];
|
||||
OutElem|=ThisElem.Flags<<COLLISION_TYPE_FLAG_SHIFT;
|
||||
/*
|
||||
OutElem=0;
|
||||
|
|
|
@ -107,8 +107,11 @@ vector<int> Counts;
|
|||
OutName+="_";
|
||||
OutName+=Name;
|
||||
|
||||
// if (Counts[i])
|
||||
{
|
||||
Core->AddInfItem(OutName,Counts[i]);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
|
|
@ -1148,8 +1148,8 @@ int Vtx[3];
|
|||
void CMkLevel::AddInfItem(const char *Name,int Val)
|
||||
{
|
||||
sInfItem Item;
|
||||
|
||||
Item.Name=Name;
|
||||
GString ReplaceBadFileChars(GString s); // Dodgy extern from TexGrab Lib!
|
||||
Item.Name=ReplaceBadFileChars(Name);
|
||||
Item.Name.Upper();
|
||||
Item.Val=Val;
|
||||
|
||||
|
|
|
@ -155,6 +155,7 @@ hazard_src := hazard \
|
|||
fx_src := fx \
|
||||
fxbaseanim \
|
||||
fxbasetrail \
|
||||
fxjfish \
|
||||
fxfallingtile \
|
||||
fxsteam \
|
||||
fxsplash \
|
||||
|
|
Loading…
Add table
Reference in a new issue