Initial commit of Command & Conquer Renegade source code.

This commit is contained in:
LFeenanEA
2025-02-27 16:39:46 +00:00
parent 74ab8fa5e0
commit 58ed459113
4918 changed files with 1366710 additions and 0 deletions

View File

@@ -0,0 +1,84 @@
/*
** Command & Conquer Renegade(tm)
** Copyright 2025 Electronic Arts Inc.
**
** This program is free software: you can redistribute it and/or modify
** it under the terms of the GNU General Public License as published by
** the Free Software Foundation, either version 3 of the License, or
** (at your option) any later version.
**
** This program is distributed in the hope that it will be useful,
** but WITHOUT ANY WARRANTY; without even the implied warranty of
** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
** GNU General Public License for more details.
**
** You should have received a copy of the GNU General Public License
** along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
/**********************************************************************
*<
FILE: DllEntry.cpp
DESCRIPTION:Contains the Dll Entry stuff
CREATED BY:
HISTORY:
*> Copyright (c) 1997, All Rights Reserved.
**********************************************************************/
#include "MaxFly.h"
extern ClassDesc2* GetMaxFlyDesc();
HINSTANCE hInstance;
int controlsInit = FALSE;
BOOL WINAPI DllMain(HINSTANCE hinstDLL,ULONG fdwReason,LPVOID lpvReserved)
{
hInstance = hinstDLL; // Hang on to this DLL's instance handle.
if (!controlsInit) {
controlsInit = TRUE;
InitCustomControls(hInstance); // Initialize MAX's custom controls
InitCommonControls(); // Initialize Win95 controls
}
return (TRUE);
}
__declspec( dllexport ) const TCHAR* LibDescription()
{
return GetString(IDS_LIBDESCRIPTION);
}
//TODO: Must change this number when adding a new class
__declspec( dllexport ) int LibNumberClasses()
{
return 1;
}
__declspec( dllexport ) ClassDesc* LibClassDesc(int i)
{
switch(i) {
case 0: return GetMaxFlyDesc();
default: return 0;
}
}
__declspec( dllexport ) ULONG LibVersion()
{
return VERSION_3DSMAX;
}
TCHAR *GetString(int id)
{
static TCHAR buf[256];
if (hInstance)
return LoadString(hInstance, id, buf, sizeof(buf)) ? buf : NULL;
return NULL;
}

View File

@@ -0,0 +1,305 @@
/*
** Command & Conquer Renegade(tm)
** Copyright 2025 Electronic Arts Inc.
**
** This program is free software: you can redistribute it and/or modify
** it under the terms of the GNU General Public License as published by
** the Free Software Foundation, either version 3 of the License, or
** (at your option) any later version.
**
** This program is distributed in the hope that it will be useful,
** but WITHOUT ANY WARRANTY; without even the implied warranty of
** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
** GNU General Public License for more details.
**
** You should have received a copy of the GNU General Public License
** along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
/**********************************************************************
*<
FILE: MaxFly.cpp
DESCRIPTION: Appwizard generated plugin
CREATED BY:
HISTORY:
*> Copyright (c) 1997, All Rights Reserved.
**********************************************************************/
#include "MaxFly.h"
#define MAXFLY_CLASS_ID Class_ID(0xf1077c8, 0x387a6b66)
const float PITCH_SPEED = 8.0f * 3.1415f / 180.0f;
const float YAW_SPEED = 8.0f * 3.1415f / 180.0f;
const float FLY_SPEED = 5.0f;
class MaxFly : public UtilityObj
{
public:
MaxFly();
~MaxFly();
void BeginEditParams(Interface *ip,IUtil *iu);
void EndEditParams(Interface *ip,IUtil *iu);
void Init(HWND hWnd);
void Destroy(HWND hWnd);
void DeleteThis() { }
protected:
void Select_Camera(void);
void Pitch_Up(void);
void Pitch_Down(void);
void Yaw_Left(void);
void Yaw_Right(void);
void Fly_Forward(void);
void Fly_Backward(void);
HWND hPanel;
IUtil * iu;
Interface * ip;
friend static BOOL CALLBACK MaxFlyDlgProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam);
};
static MaxFly theMaxFly;
class MaxFlyClassDesc:public ClassDesc2
{
public:
int IsPublic() {return 1;}
void * Create(BOOL loading = FALSE) {return &theMaxFly;}
const TCHAR * ClassName() {return GetString(IDS_CLASS_NAME);}
SClass_ID SuperClassID() {return UTILITY_CLASS_ID;}
Class_ID ClassID() {return MAXFLY_CLASS_ID;}
const TCHAR* Category() {return GetString(IDS_CATEGORY);}
const TCHAR* InternalName() { return _T("MaxFly"); } // returns fixed parsable name (scripter-visible name)
HINSTANCE HInstance() { return hInstance; } // returns owning module handle
};
static MaxFlyClassDesc MaxFlyDesc;
ClassDesc2* GetMaxFlyDesc() {return &MaxFlyDesc;}
static BOOL CALLBACK MaxFlyDlgProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam)
{
switch (msg) {
case WM_INITDIALOG:
theMaxFly.Init(hWnd);
break;
case WM_DESTROY:
theMaxFly.Destroy(hWnd);
break;
case WM_COMMAND:
switch (LOWORD(wParam)) {
case IDC_PITCH_UP_BUTTON: theMaxFly.Pitch_Up(); break;
case IDC_PITCH_DOWN_BUTTON: theMaxFly.Pitch_Down(); break;
case IDC_YAW_LEFT_BUTTON: theMaxFly.Yaw_Left(); break;
case IDC_YAW_RIGHT_BUTTON: theMaxFly.Yaw_Right(); break;
case IDC_FLY_FORWARD_BUTTON: theMaxFly.Fly_Forward(); break;
case IDC_FLY_BACKWARD_BUTTON: theMaxFly.Fly_Backward(); break;
case IDC_SELECT_CAMERA_BUTTON: theMaxFly.Select_Camera(); break;
};
break;
case WM_LBUTTONDOWN:
case WM_LBUTTONUP:
case WM_MOUSEMOVE:
theMaxFly.ip->RollupMouseMessage(hWnd,msg,wParam,lParam);
break;
default:
return FALSE;
}
return TRUE;
}
//--- MaxFly -------------------------------------------------------
MaxFly::MaxFly()
{
iu = NULL;
ip = NULL;
hPanel = NULL;
}
MaxFly::~MaxFly()
{
}
void MaxFly::BeginEditParams(Interface *ip,IUtil *iu)
{
this->iu = iu;
this->ip = ip;
hPanel = ip->AddRollupPage(
hInstance,
MAKEINTRESOURCE(IDD_PANEL),
MaxFlyDlgProc,
GetString(IDS_PARAMS),
0);
}
void MaxFly::EndEditParams(Interface *ip,IUtil *iu)
{
this->iu = NULL;
this->ip = NULL;
ip->DeleteRollupPage(hPanel);
hPanel = NULL;
}
void MaxFly::Init(HWND hWnd)
{
}
void MaxFly::Destroy(HWND hWnd)
{
}
void MaxFly::Select_Camera(void)
{
}
void MaxFly::Pitch_Up(void)
{
if (ip->GetSelNodeCount() > 0) {
for (int i=0; i<ip->GetSelNodeCount(); i++) {
INode * node = ip->GetSelNode(i);
if (node) {
Matrix3 object_tm = node->GetObjectTM(ip->GetTime());
node->Rotate( ip->GetTime(), // Time
object_tm, // tmAxis
AngAxis(Point3(1,0,0),-PITCH_SPEED), // const AngAxis& val,
TRUE, // BOOL localOrigin=FALSE,
TRUE, // BOOL affectKids=TRUE,
PIV_NONE, // int pivMode=PIV_NONE,
TRUE // BOOL ignoreLocks=FALSE
);
}
}
ip->RedrawViews(ip->GetTime());
}
}
void MaxFly::Pitch_Down(void)
{
if (ip->GetSelNodeCount() > 0) {
for (int i=0; i<ip->GetSelNodeCount(); i++) {
INode * node = ip->GetSelNode(i);
if (node) {
Matrix3 object_tm = node->GetObjectTM(ip->GetTime());
node->Rotate( ip->GetTime(), // Time
object_tm, // tmAxis
AngAxis(Point3(1,0,0),PITCH_SPEED), // const AngAxis& val,
TRUE, // BOOL localOrigin=FALSE,
TRUE, // BOOL affectKids=TRUE,
PIV_NONE, // int pivMode=PIV_NONE,
TRUE // BOOL ignoreLocks=FALSE
);
}
}
ip->RedrawViews(ip->GetTime());
}
}
void MaxFly::Yaw_Left(void)
{
if (ip->GetSelNodeCount() > 0) {
for (int i=0; i<ip->GetSelNodeCount(); i++) {
INode * node = ip->GetSelNode(i);
if (node) {
Matrix3 object_tm = node->GetObjectTM(ip->GetTime());
node->Rotate( ip->GetTime(), // Time
object_tm, // tmAxis
AngAxis(Point3(0,1,0),-YAW_SPEED), // const AngAxis& val,
TRUE, // BOOL localOrigin=FALSE,
TRUE, // BOOL affectKids=TRUE,
PIV_NONE, // int pivMode=PIV_NONE,
TRUE // BOOL ignoreLocks=FALSE
);
}
}
ip->RedrawViews(ip->GetTime());
}
}
void MaxFly::Yaw_Right(void)
{
if (ip->GetSelNodeCount() > 0) {
for (int i=0; i<ip->GetSelNodeCount(); i++) {
INode * node = ip->GetSelNode(i);
if (node) {
Matrix3 object_tm = node->GetObjectTM(ip->GetTime());
node->Rotate( ip->GetTime(), // Time
object_tm, // tmAxis
AngAxis(Point3(0,1,0),+YAW_SPEED), // const AngAxis& val,
TRUE, // BOOL localOrigin=FALSE,
TRUE, // BOOL affectKids=TRUE,
PIV_NONE, // int pivMode=PIV_NONE,
TRUE // BOOL ignoreLocks=FALSE
);
}
}
ip->RedrawViews(ip->GetTime());
}
}
void MaxFly::Fly_Forward(void)
{
if (ip->GetSelNodeCount() > 0) {
for (int i=0; i<ip->GetSelNodeCount(); i++) {
INode * node = ip->GetSelNode(i);
if (node) {
Matrix3 object_tm = node->GetObjectTM(ip->GetTime());
node->Move( ip->GetTime(), // TimeValue t,
object_tm, // const Matrix3& tmAxis,
Point3(0.0f,0.0f,-FLY_SPEED), // const Point3& val,
TRUE, // BOOL localOrigin=FALSE,
TRUE, // BOOL affectKids=TRUE,
PIV_NONE, // int pivMode=PIV_NONE,
TRUE // BOOL ignoreLocks=FALSE
);
}
}
ip->RedrawViews(ip->GetTime());
}
}
void MaxFly::Fly_Backward(void)
{
if (ip->GetSelNodeCount() > 0) {
for (int i=0; i<ip->GetSelNodeCount(); i++) {
INode * node = ip->GetSelNode(i);
if (node) {
Matrix3 object_tm = node->GetObjectTM(ip->GetTime());
node->Move( ip->GetTime(), // TimeValue t,
object_tm, // const Matrix3& tmAxis,
Point3(0.0f,0.0f,FLY_SPEED), // const Point3& val,
TRUE, // BOOL localOrigin=FALSE,
TRUE, // BOOL affectKids=TRUE,
PIV_NONE, // int pivMode=PIV_NONE,
TRUE // BOOL ignoreLocks=FALSE
);
}
}
ip->RedrawViews(ip->GetTime());
}
}

View File

@@ -0,0 +1,8 @@
LIBRARY MaxFly
EXPORTS
LibDescription @1
LibNumberClasses @2
LibClassDesc @3
LibVersion @4
SECTIONS
.data READ WRITE

View File

@@ -0,0 +1,153 @@
# Microsoft Developer Studio Project File - Name="MaxFly" - Package Owner=<4>
# Microsoft Developer Studio Generated Build File, Format Version 6.00
# ** DO NOT EDIT **
# TARGTYPE "Win32 (x86) Application" 0x0101
CFG=MaxFly - Win32 Hybrid
!MESSAGE This is not a valid makefile. To build this project using NMAKE,
!MESSAGE use the Export Makefile command and run
!MESSAGE
!MESSAGE NMAKE /f "MaxFly.mak".
!MESSAGE
!MESSAGE You can specify a configuration when running NMAKE
!MESSAGE by defining the macro CFG on the command line. For example:
!MESSAGE
!MESSAGE NMAKE /f "MaxFly.mak" CFG="MaxFly - Win32 Hybrid"
!MESSAGE
!MESSAGE Possible choices for configuration are:
!MESSAGE
!MESSAGE "MaxFly - Win32 Release" (based on "Win32 (x86) Application")
!MESSAGE "MaxFly - Win32 Debug" (based on "Win32 (x86) Application")
!MESSAGE "MaxFly - Win32 Hybrid" (based on "Win32 (x86) Application")
!MESSAGE
# Begin Project
# PROP AllowPerConfigDependencies 0
# PROP Scc_ProjName ""
# PROP Scc_LocalPath ""
CPP=cl.exe
MTL=midl.exe
RSC=rc.exe
!IF "$(CFG)" == "MaxFly - Win32 Release"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 0
# PROP BASE Output_Dir "Release"
# PROP BASE Intermediate_Dir "Release"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 0
# PROP Output_Dir "Release"
# PROP Intermediate_Dir "Release"
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /YX /FD /c
# ADD CPP /nologo /G6 /MD /W3 /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /YX /FD /c
# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /win32
# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /win32
# ADD BASE RSC /l 0x409 /d "NDEBUG"
# ADD RSC /l 0x409 /d "NDEBUG"
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /machine:I386
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib comctl32.lib bmm.lib core.lib geom.lib gfx.lib mesh.lib maxutil.lib maxscrpt.lib gup.lib paramblk2.lib /nologo /base:"0x105b0000" /subsystem:windows /dll /machine:I386 /out:"Release\MaxFly.dlu" /release
!ELSEIF "$(CFG)" == "MaxFly - Win32 Debug"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 1
# PROP BASE Output_Dir "Debug"
# PROP BASE Intermediate_Dir "Debug"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 1
# PROP Output_Dir "Debug"
# PROP Intermediate_Dir "Debug"
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /YX /FD /GZ /c
# ADD CPP /nologo /G6 /MDd /W3 /Gm /ZI /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /YX /FD /c
# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /win32
# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /win32
# ADD BASE RSC /l 0x409 /d "_DEBUG"
# ADD RSC /l 0x409 /d "_DEBUG"
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /debug /machine:I386
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib comctl32.lib bmm.lib core.lib geom.lib gfx.lib mesh.lib maxutil.lib maxscrpt.lib gup.lib paramblk2.lib /nologo /base:"0x105b0000" /subsystem:windows /dll /debug /machine:I386 /out:"Debug\MaxFly.dlu"
!ELSEIF "$(CFG)" == "MaxFly - Win32 Hybrid"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 1
# PROP BASE Output_Dir "Hybrid"
# PROP BASE Intermediate_Dir "Hybrid"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 1
# PROP Output_Dir "Hybrid"
# PROP Intermediate_Dir "Hybrid"
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /YX /FD /GZ /c
# ADD CPP /nologo /G6 /MD /W3 /Gm /ZI /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /YX /FD /c
# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /win32
# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /win32
# ADD BASE RSC /l 0x409 /d "_DEBUG"
# ADD RSC /l 0x409 /d "_DEBUG"
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /debug /machine:I386
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib comctl32.lib bmm.lib core.lib geom.lib gfx.lib mesh.lib maxutil.lib maxscrpt.lib gup.lib paramblk2.lib /nologo /base:"0x105b0000" /subsystem:windows /dll /debug /machine:I386 /out:"Hybrid\MaxFly.dlu"
!ENDIF
# Begin Target
# Name "MaxFly - Win32 Release"
# Name "MaxFly - Win32 Debug"
# Name "MaxFly - Win32 Hybrid"
# Begin Group "Source Files"
# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
# Begin Source File
SOURCE=.\DllEntry.cpp
# End Source File
# Begin Source File
SOURCE=.\MaxFly.cpp
# End Source File
# Begin Source File
SOURCE=.\MaxFly.def
# End Source File
# Begin Source File
SOURCE=.\MaxFly.rc
# End Source File
# End Group
# Begin Group "Header Files"
# PROP Default_Filter "h;hpp;hxx;hm;inl"
# Begin Source File
SOURCE=.\MaxFly.h
# End Source File
# Begin Source File
SOURCE=.\resource.h
# End Source File
# End Group
# Begin Group "Resource Files"
# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
# End Group
# End Target
# End Project

View File

@@ -0,0 +1,45 @@
Microsoft Developer Studio Workspace File, Format Version 6.00
# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE!
###############################################################################
Project: "MaxFly"=.\MaxFly.dsp - Package Owner=<4>
Package=<5>
{{{
}}}
Package=<4>
{{{
}}}
###############################################################################
Project: "max2w3d"=..\max2w3d\max2w3d.dsp - Package Owner=<4>
Package=<5>
{{{
begin source code control
"$/Commando/Code/Tools/max2w3d", SSJAAAAA
..\max2w3d
end source code control
}}}
Package=<4>
{{{
}}}
###############################################################################
Global:
Package=<5>
{{{
}}}
Package=<3>
{{{
}}}
###############################################################################

View File

@@ -0,0 +1,47 @@
/*
** Command & Conquer Renegade(tm)
** Copyright 2025 Electronic Arts Inc.
**
** This program is free software: you can redistribute it and/or modify
** it under the terms of the GNU General Public License as published by
** the Free Software Foundation, either version 3 of the License, or
** (at your option) any later version.
**
** This program is distributed in the hope that it will be useful,
** but WITHOUT ANY WARRANTY; without even the implied warranty of
** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
** GNU General Public License for more details.
**
** You should have received a copy of the GNU General Public License
** along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
/**********************************************************************
*<
FILE: MaxFly.h
DESCRIPTION: Template Utility
CREATED BY:
HISTORY:
*> Copyright (c) 1997, All Rights Reserved.
**********************************************************************/
#ifndef __MAXFLY__H
#define __MAXFLY__H
#include "Max.h"
#include "resource.h"
#include "istdplug.h"
#include "iparamb2.h"
#include "iparamm2.h"
#include "utilapi.h"
extern TCHAR *GetString(int id);
extern HINSTANCE hInstance;
#endif // __MAXFLY__H

163
Code/Tools/MaxFly/MaxFly.rc Normal file
View File

@@ -0,0 +1,163 @@
//Microsoft Developer Studio generated resource script.
//
#include "resource.h"
#define APSTUDIO_READONLY_SYMBOLS
/////////////////////////////////////////////////////////////////////////////
//
// Generated from the TEXTINCLUDE 2 resource.
//
#include "afxres.h"
/////////////////////////////////////////////////////////////////////////////
#undef APSTUDIO_READONLY_SYMBOLS
/////////////////////////////////////////////////////////////////////////////
// English (U.S.) resources
#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU)
#ifdef _WIN32
LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
#pragma code_page(1252)
#endif //_WIN32
/////////////////////////////////////////////////////////////////////////////
//
// Dialog
//
IDD_MAXFLY_PANEL DIALOG DISCARDABLE 0, 0, 108, 152
STYLE WS_CHILD | WS_VISIBLE
FONT 8, "MS Sans Serif"
BEGIN
CTEXT "Max Fly",IDC_STATIC,7,7,94,10
CONTROL "",IDC_SPEED_EDIT,"CustEdit",WS_TABSTOP,47,127,35,10
CONTROL "",IDC_SPEED_SPIN,"SpinnerControl",0x0,83,127,7,10
LTEXT "Speed:",IDC_STATIC,13,128,24,8
PUSHBUTTON "Pitch Up",IDC_PITCH_UP_BUTTON,32,50,44,14
PUSHBUTTON "Pitch Down",IDC_PITCH_DOWN_BUTTON,32,84,44,14
PUSHBUTTON "Yaw Left",IDC_YAW_LEFT_BUTTON,7,67,44,14
PUSHBUTTON "Yaw Right",IDC_YAW_RIGHT_BUTTON,57,67,44,14
PUSHBUTTON "Fly Forward",IDC_FLY_FORWARD_BUTTON,7,106,46,14
PUSHBUTTON "Fly Backward",IDC_FLY_BACKWARD_BUTTON,55,105,46,14
PUSHBUTTON "Select Camera",IDC_SELECT_CAMERA_BUTTON,7,20,94,12
GROUPBOX "Controls",IDC_STATIC,7,38,94,107
END
/////////////////////////////////////////////////////////////////////////////
//
// DESIGNINFO
//
#ifdef APSTUDIO_INVOKED
GUIDELINES DESIGNINFO DISCARDABLE
BEGIN
IDD_MAXFLY_PANEL, DIALOG
BEGIN
LEFTMARGIN, 7
RIGHTMARGIN, 101
TOPMARGIN, 7
BOTTOMMARGIN, 145
END
END
#endif // APSTUDIO_INVOKED
#ifdef APSTUDIO_INVOKED
/////////////////////////////////////////////////////////////////////////////
//
// TEXTINCLUDE
//
1 TEXTINCLUDE DISCARDABLE
BEGIN
"resource.h\0"
END
2 TEXTINCLUDE DISCARDABLE
BEGIN
"#include ""afxres.h""\r\n"
"\0"
END
3 TEXTINCLUDE DISCARDABLE
BEGIN
"\r\n"
"\0"
END
#endif // APSTUDIO_INVOKED
#ifndef _MAC
/////////////////////////////////////////////////////////////////////////////
//
// Version
//
VS_VERSION_INFO VERSIONINFO
FILEVERSION 3,0,0,0
PRODUCTVERSION 3,0,0,0
FILEFLAGSMASK 0x3fL
#ifdef _DEBUG
FILEFLAGS 0x1L
#else
FILEFLAGS 0x0L
#endif
FILEOS 0x40004L
FILETYPE 0x2L
FILESUBTYPE 0x0L
BEGIN
BLOCK "StringFileInfo"
BEGIN
BLOCK "040904b0"
BEGIN
VALUE "CompanyName", "\0"
VALUE "FileVersion", "3.0.0.0\0"
VALUE "InternalName", "MaxFly\0"
VALUE "LegalCopyright", "\0"
VALUE "OriginalFilename", "MaxFly.dlu\0"
VALUE "ProductName", "3D Studio MAX\0"
VALUE "ProductVersion", "3.0.0.0\0"
VALUE "FileDescription", "Max Fly\0"
VALUE "Comments", "TECH: \0"
VALUE "LegalTrademarks", "\0"
END
END
BLOCK "VarFileInfo"
BEGIN
VALUE "Translation", 0x409, 1200
END
END
#endif // !_MAC
/////////////////////////////////////////////////////////////////////////////
//
// String Table
//
STRINGTABLE DISCARDABLE
BEGIN
IDS_LIBDESCRIPTION "Max Fly"
IDS_CATEGORY "Westwood Tools"
IDS_CLASS_NAME "MaxFly"
END
#endif // English (U.S.) resources
/////////////////////////////////////////////////////////////////////////////
#ifndef APSTUDIO_INVOKED
/////////////////////////////////////////////////////////////////////////////
//
// Generated from the TEXTINCLUDE 3 resource.
//
/////////////////////////////////////////////////////////////////////////////
#endif // not APSTUDIO_INVOKED

View File

@@ -0,0 +1,36 @@
//{{NO_DEPENDENCIES}}
// Microsoft Developer Studio generated include file.
// Used by MaxFly.rc
//
#define IDS_LIBDESCRIPTION 1
#define IDS_CATEGORY 2
#define IDS_CLASS_NAME 3
#define IDS_PARAMS 4
#define IDS_SPIN 5
#define IDD_PANEL 101
#define IDD_MAXFLY_PANEL 101
#define IDC_CLOSEBUTTON 1000
#define IDC_DOSTUFF 1000
#define IDC_PITCH_UP_BUTTON 1001
#define IDC_PITCH_DOWN_BUTTON 1002
#define IDC_YAW_LEFT_BUTTON 1003
#define IDC_YAW_RIGHT_BUTTON 1004
#define IDC_FLY_FORWARD_BUTTON 1005
#define IDC_FLY_BACKWARD_BUTTON 1006
#define IDC_SELECT_CAMERA_BUTTON 1007
#define IDC_COLOR 1456
#define IDC_EDIT 1490
#define IDC_SPEED_EDIT 1490
#define IDC_SPIN 1496
#define IDC_SPEED_SPIN 1496
// Next default values for new objects
//
#ifdef APSTUDIO_INVOKED
#ifndef APSTUDIO_READONLY_SYMBOLS
#define _APS_NEXT_RESOURCE_VALUE 101
#define _APS_NEXT_COMMAND_VALUE 40001
#define _APS_NEXT_CONTROL_VALUE 1009
#define _APS_NEXT_SYMED_VALUE 101
#endif
#endif