w of the dueck
Here is the collection of files that have been altered so far. Changes made: ' [ ' is an additional zoom in/zoom out key. Ctrl + Arrow keys introduced for loading previous/next town and for outdoor zones above/below/left/right. Added a comment about which Ctrl + Letter shortcuts were still available. Town menu was rearranged. Graying out of menus has been updated. Version date is now shown in the Help > About Blades Scenario Editor dialog. Three new hotkeys: "^A", 213, ASCII, "^B", 214, ASCII, "^V", 312, ASCII New scenario object write up: BoE Scenario Object data.txt regards Ishad Nha git-svn-id: http://openexile.googlecode.com/svn/trunk@129 4ebdad44-0ea0-11de-aab3-ff745001d230
This commit is contained in:
@@ -6,8 +6,6 @@
|
|||||||
#include "string.h"
|
#include "string.h"
|
||||||
#include "stdio.h"
|
#include "stdio.h"
|
||||||
#include "math.h"
|
#include "math.h"
|
||||||
|
|
||||||
|
|
||||||
#include "Global.h"
|
#include "Global.h"
|
||||||
#include "graphics.h"
|
#include "graphics.h"
|
||||||
#include "tactions.h"
|
#include "tactions.h"
|
||||||
@@ -87,7 +85,7 @@ Boolean editing_town = FALSE;
|
|||||||
short town_type = 0; // 0 - big 1 - ave 2 - small
|
short town_type = 0; // 0 - big 1 - ave 2 - small
|
||||||
char szWinName[] = "BoE for Win32 dialogs";
|
char szWinName[] = "BoE for Win32 dialogs";
|
||||||
char szAppName[] = "Classic BoE Scenario Editor";
|
char szAppName[] = "Classic BoE Scenario Editor";
|
||||||
|
extern void object_scenario_data_dump();
|
||||||
char szBladBase[128];
|
char szBladBase[128];
|
||||||
|
|
||||||
void loadSettingsFromFile()
|
void loadSettingsFromFile()
|
||||||
@@ -721,6 +719,14 @@ Boolean handle_menu (short item, HMENU menu)
|
|||||||
case 304: frill_up_terrain(); break;
|
case 304: frill_up_terrain(); break;
|
||||||
case 305: unfrill_terrain(); break;
|
case 305: unfrill_terrain(); break;
|
||||||
case 306: edit_out_strs(); break;
|
case 306: edit_out_strs(); break;
|
||||||
|
case 307: if (fancy_choice_dialog(875,0) == 2) // clear all special encounters
|
||||||
|
break;
|
||||||
|
for (i = 0; i < 18; i++) {
|
||||||
|
current_terrain.special_locs[i].x = 100;
|
||||||
|
current_terrain.special_locs[i].y = 0;
|
||||||
|
current_terrain.special_id[i] = 255;
|
||||||
|
}
|
||||||
|
|
||||||
case 311:
|
case 311:
|
||||||
lpsi.fMask = SIF_POS;
|
lpsi.fMask = SIF_POS;
|
||||||
lpsi.nPos = 0;
|
lpsi.nPos = 0;
|
||||||
@@ -733,13 +739,6 @@ Boolean handle_menu (short item, HMENU menu)
|
|||||||
SetScrollInfo(right_sbar,SB_CTL,&lpsi,TRUE);
|
SetScrollInfo(right_sbar,SB_CTL,&lpsi,TRUE);
|
||||||
//SetScrollPos(right_sbar,SB_CTL,0,TRUE);
|
//SetScrollPos(right_sbar,SB_CTL,0,TRUE);
|
||||||
start_string_editing(1,0); break;
|
start_string_editing(1,0); break;
|
||||||
case 313: if (fancy_choice_dialog(875,0) == 2) // clear all special encounters
|
|
||||||
break;
|
|
||||||
for (i = 0; i < 18; i++) {
|
|
||||||
current_terrain.special_locs[i].x = 100;
|
|
||||||
current_terrain.special_locs[i].y = 0;
|
|
||||||
current_terrain.special_id[i] = 255;
|
|
||||||
}
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 401:
|
case 401:
|
||||||
@@ -874,6 +873,48 @@ Boolean handle_menu (short item, HMENU menu)
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
case 412: // load outdoor zone above
|
||||||
|
if (editing_town)
|
||||||
|
break;
|
||||||
|
if (cur_out.y > 0) {
|
||||||
|
x = cur_out.x;
|
||||||
|
y = cur_out.y - 1;
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
x = cur_out.x;
|
||||||
|
y = scenario.out_height - 1;
|
||||||
|
}
|
||||||
|
spot_hit.x = x;
|
||||||
|
spot_hit.y = y;
|
||||||
|
load_outdoors(spot_hit,0);
|
||||||
|
augment_terrain(spot_hit);
|
||||||
|
start_out_edit();
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 413: // load outdoor zone below
|
||||||
|
if (editing_town)
|
||||||
|
break;
|
||||||
|
if (cur_out.y == scenario.out_height - 1) {
|
||||||
|
x = cur_out.x;
|
||||||
|
y = 0;
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
x = cur_out.x;
|
||||||
|
y = cur_out.y + 1;
|
||||||
|
}
|
||||||
|
spot_hit.x = x;
|
||||||
|
spot_hit.y = y;
|
||||||
|
load_outdoors(spot_hit,0);
|
||||||
|
augment_terrain(spot_hit);
|
||||||
|
start_out_edit();
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 414:
|
||||||
|
if (fancy_choice_dialog(878,0) == 1)
|
||||||
|
object_scenario_data_dump();
|
||||||
|
break;
|
||||||
|
|
||||||
|
|
||||||
// Extra Help
|
// Extra Help
|
||||||
case 801: // help file
|
case 801: // help file
|
||||||
WinHelp(mainPtr,"Scenario Editor.hlp",HELP_CONTENTS,0L);
|
WinHelp(mainPtr,"Scenario Editor.hlp",HELP_CONTENTS,0L);
|
||||||
|
|||||||
@@ -71,17 +71,17 @@ Exile MENU
|
|||||||
MENUITEM "Set All Items Not Property", 209
|
MENUITEM "Set All Items Not Property", 209
|
||||||
MENUITEM "Clear All Items", 210
|
MENUITEM "Clear All Items", 210
|
||||||
MENUITEM SEPARATOR
|
MENUITEM SEPARATOR
|
||||||
|
MENUITEM "Clear All Monsters", 217
|
||||||
|
MENUITEM "Clear All Placed Specials", 218
|
||||||
|
MENUITEM "Clear All Preset Fields", 219
|
||||||
|
MENUITEM "Clear All Stains", 220
|
||||||
|
MENUITEM SEPARATOR
|
||||||
MENUITEM "Advanced:", 212
|
MENUITEM "Advanced:", 212
|
||||||
MENUITEM " Edit Special Nodes", 213
|
MENUITEM " Edit Special Nodes\tCtrl+A", 213
|
||||||
MENUITEM " Edit Town Text", 214
|
MENUITEM " Edit Town Text\tCtrl+B", 214
|
||||||
MENUITEM " Advanced Town Details", 215
|
MENUITEM " Advanced Town Details", 215
|
||||||
MENUITEM " Set Town Event Timers", 216
|
MENUITEM " Set Town Event Timers", 216
|
||||||
MENUITEM " Concise Town Report",221
|
MENUITEM " Concise Town Report",221
|
||||||
MENUITEM SEPARATOR
|
|
||||||
MENUITEM " Clear All Monsters", 217
|
|
||||||
MENUITEM " Clear All Placed Specials", 218
|
|
||||||
MENUITEM " Clear All Preset Fields", 219
|
|
||||||
MENUITEM " Clear All Stains", 220
|
|
||||||
}
|
}
|
||||||
|
|
||||||
POPUP "&Outdoors"
|
POPUP "&Outdoors"
|
||||||
@@ -92,11 +92,11 @@ Exile MENU
|
|||||||
MENUITEM "Frill Up Terrain", 304
|
MENUITEM "Frill Up Terrain", 304
|
||||||
MENUITEM "Remove Terrain Frills", 305
|
MENUITEM "Remove Terrain Frills", 305
|
||||||
MENUITEM "Edit Area Descriptions", 306
|
MENUITEM "Edit Area Descriptions", 306
|
||||||
|
MENUITEM "Clear All Placed Specials", 307
|
||||||
MENUITEM SEPARATOR
|
MENUITEM SEPARATOR
|
||||||
MENUITEM "Advanced:", 310
|
MENUITEM "Advanced:", 310
|
||||||
MENUITEM " Edit Special Nodes\tCtrl+U", 311
|
MENUITEM " Edit Special Nodes\tCtrl+U", 311
|
||||||
MENUITEM " Edit Outdoor Text", 312
|
MENUITEM " Edit Outdoor Text\tCtrl+V", 312
|
||||||
MENUITEM " Delete All Placed Specials", 313
|
|
||||||
}
|
}
|
||||||
|
|
||||||
POPUP "&Additional Features"
|
POPUP "&Additional Features"
|
||||||
@@ -115,7 +115,8 @@ Exile MENU
|
|||||||
MENUITEM "Switch Viewing Mode\tCtrl+I", 408
|
MENUITEM "Switch Viewing Mode\tCtrl+I", 408
|
||||||
MENUITEM "Load Previous Outdoor Zone/Town\tCtrl+J", 409
|
MENUITEM "Load Previous Outdoor Zone/Town\tCtrl+J", 409
|
||||||
MENUITEM "Load Next Outdoor Zone/Town\tCtrl+K", 410
|
MENUITEM "Load Next Outdoor Zone/Town\tCtrl+K", 410
|
||||||
|
MENUITEM SEPARATOR
|
||||||
|
MENUITEM "Scenario Object Data Dump", 414
|
||||||
}
|
}
|
||||||
|
|
||||||
POPUP "&I1"
|
POPUP "&I1"
|
||||||
@@ -209,7 +210,10 @@ ACCELERATORS_1 ACCELERATORS
|
|||||||
"^S", 2, ASCII
|
"^S", 2, ASCII
|
||||||
"^N", 3, ASCII
|
"^N", 3, ASCII
|
||||||
"^Q", 5, ASCII
|
"^Q", 5, ASCII
|
||||||
|
"^A", 213, ASCII
|
||||||
|
"^B", 214, ASCII
|
||||||
"^U", 311, ASCII
|
"^U", 311, ASCII
|
||||||
|
"^V", 312, ASCII
|
||||||
"^T", 401, ASCII
|
"^T", 401, ASCII
|
||||||
"^R", 402, ASCII
|
"^R", 402, ASCII
|
||||||
"^L", 403, ASCII
|
"^L", 403, ASCII
|
||||||
@@ -220,6 +224,15 @@ ACCELERATORS_1 ACCELERATORS
|
|||||||
"^I", 408, ASCII
|
"^I", 408, ASCII
|
||||||
"^J", 409, ASCII
|
"^J", 409, ASCII
|
||||||
"^K", 410, ASCII
|
"^K", 410, ASCII
|
||||||
|
VK_TAB, 408, VIRTKEY, CONTROL, NOINVERT
|
||||||
|
VK_LEFT, 409, VIRTKEY, CONTROL, NOINVERT
|
||||||
|
VK_RIGHT, 410, VIRTKEY, CONTROL, NOINVERT
|
||||||
|
VK_UP, 412, VIRTKEY, CONTROL, NOINVERT
|
||||||
|
VK_DOWN, 413, VIRTKEY, CONTROL, NOINVERT
|
||||||
|
|
||||||
|
// Defined elsewhere: D,L
|
||||||
|
// Keys currently available: C,H,P,W,X,Y,Z
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
1 WAVE "snd0.wav"
|
1 WAVE "snd0.wav"
|
||||||
|
|||||||
@@ -1883,6 +1883,16 @@ STYLE WS_POPUP | WS_DLGFRAME
|
|||||||
LTEXT "It includes the locations and text strings too.", 5, 49, 95, 271, 29
|
LTEXT "It includes the locations and text strings too.", 5, 49, 95, 271, 29
|
||||||
}
|
}
|
||||||
|
|
||||||
|
878 DIALOG 10, 10, 356, 154
|
||||||
|
STYLE WS_POPUP | WS_DLGFRAME
|
||||||
|
{
|
||||||
|
LTEXT "1_63", 1, 254, 129, 66, 20
|
||||||
|
LTEXT "0_5", 2, 189, 129, 65, 20
|
||||||
|
LTEXT "5_716", 3, 6, 6, 36, 36
|
||||||
|
LTEXT "This creates a list of all the item placement shortcuts and specials in the scenario. Information is placed in a file called 'BoE Scenario Object data.txt' in the editor folder.", 4, 49, 6, 271, 66
|
||||||
|
LTEXT "A list of the Special Items is included.", 5, 49, 95, 271, 29
|
||||||
|
}
|
||||||
|
|
||||||
890 DIALOG 10, 10, 357, 114
|
890 DIALOG 10, 10, 357, 114
|
||||||
STYLE WS_POPUP | WS_DLGFRAME
|
STYLE WS_POPUP | WS_DLGFRAME
|
||||||
{
|
{
|
||||||
@@ -1977,7 +1987,7 @@ STYLE WS_POPUP | WS_DLGFRAME
|
|||||||
{
|
{
|
||||||
LTEXT "1_63", 1, 435, 295, 61, 20
|
LTEXT "1_63", 1, 435, 295, 61, 20
|
||||||
LTEXT "5_716", 2, 6, 6, 36, 36
|
LTEXT "5_716", 2, 6, 6, 36, 36
|
||||||
LTEXT "Classic Blades of Exile Scenario Editor version 1.0 | Copyright 1997, Spiderweb Software, Inc., All rights reserved.||Blades of Exile is distributed for free under GNU General Public License version 2.", 3, 50, 6, 420, 33
|
LTEXT "Classic Blades of Exile Scenario Editor version 23.09.2009 | Copyright 1997, Spiderweb Software, Inc., All rights reserved.||Blades of Exile is distributed for free under GNU General Public License version 2.", 3, 50, 6, 420, 33
|
||||||
LTEXT "CREDITS : Initial coding/32-bit porting by Ormus . Aesthetic touches by Ishad Nha.", 4, 50, 227, 424, 33
|
LTEXT "CREDITS : Initial coding/32-bit porting by Ormus . Aesthetic touches by Ishad Nha.", 4, 50, 227, 424, 33
|
||||||
LTEXT "Comments? Questions? Bugs? Post them at the Blades section of the Irony Central Board: www.ironycentral.com/forum/", 5, 50, 271, 354, 32
|
LTEXT "Comments? Questions? Bugs? Post them at the Blades section of the Irony Central Board: www.ironycentral.com/forum/", 5, 50, 271, 354, 32
|
||||||
LTEXT "Blades of Exile was brought to you by Spiderweb Software - | _Where our aberrations become your reality._ |_Blades of Exile_ and Spiderweb Software are trademarks of Spiderweb Software.", 7, 50, 154, 410, 51
|
LTEXT "Blades of Exile was brought to you by Spiderweb Software - | _Where our aberrations become your reality._ |_Blades of Exile_ and Spiderweb Software are trademarks of Spiderweb Software.", 7, 50, 154, 410, 51
|
||||||
|
|||||||
@@ -1308,7 +1308,7 @@ Boolean handle_keystroke(WPARAM wParam, LPARAM lParam)
|
|||||||
are_done = handle_action(pass_point,wParam,-1);
|
are_done = handle_action(pass_point,wParam,-1);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case'I':
|
case'I': case'[':
|
||||||
pass_point.x = RIGHT_AREA_UL_X + 6 + palette_buttons[0][1].left;
|
pass_point.x = RIGHT_AREA_UL_X + 6 + palette_buttons[0][1].left;
|
||||||
pass_point.y = RIGHT_AREA_UL_Y + 6 + terrain_rects[255].bottom + palette_buttons[0][1].top;
|
pass_point.y = RIGHT_AREA_UL_Y + 6 + terrain_rects[255].bottom + palette_buttons[0][1].top;
|
||||||
are_done = handle_action(pass_point,wParam,-1);
|
are_done = handle_action(pass_point,wParam,-1);
|
||||||
@@ -3339,22 +3339,20 @@ void shut_down_menus(short mode)
|
|||||||
{
|
{
|
||||||
HMENU menu;
|
HMENU menu;
|
||||||
short i;
|
short i;
|
||||||
short scen_items[20] = {101,103,104,105,106, 109,110,112,113,114, 115,116,117,118,119, 120,111,121,122,123};
|
|
||||||
short town_items[17] = {201,202,203,204,205, 206,208,209,210,213, 214,215,216, 217,218,219,220};
|
|
||||||
short out_items[10] = {301,302,303,304,305,306,308,311,312,313};
|
|
||||||
menu = GetMenu(mainPtr);
|
menu = GetMenu(mainPtr);
|
||||||
//menu[i] = GetSubMenu(big_menu,5 + i);
|
//menu[i] = GetSubMenu(big_menu,5 + i);
|
||||||
|
|
||||||
if (mode == 0) {
|
if (mode == 0) {
|
||||||
EnableMenuItem(menu,2,MF_GRAYED | MF_BYCOMMAND);
|
// Item 2 is Save Scenario
|
||||||
for (i = 0; i < 20; i++)
|
EnableMenuItem(menu,2,MF_GRAYED | MF_BYCOMMAND);
|
||||||
EnableMenuItem(menu,scen_items[i],MF_GRAYED | MF_BYCOMMAND);
|
for (i = 101; i < 124; i++)
|
||||||
for (i = 0; i < 17; i++)
|
EnableMenuItem(menu,i,MF_GRAYED | MF_BYCOMMAND);
|
||||||
EnableMenuItem(menu,town_items[i],MF_GRAYED | MF_BYCOMMAND);
|
for (i = 201; i < 222; i++)
|
||||||
for (i = 0; i < 10; i++)
|
EnableMenuItem(menu,i,MF_GRAYED | MF_BYCOMMAND);
|
||||||
EnableMenuItem(menu,out_items[i],MF_GRAYED | MF_BYCOMMAND);
|
for (i = 301; i < 314; i++)
|
||||||
for (i = 0; i < 10; i++)
|
EnableMenuItem(menu,i,MF_GRAYED | MF_BYCOMMAND);
|
||||||
EnableMenuItem(menu,401+i,MF_GRAYED | MF_BYCOMMAND);
|
for (i = 401; i < 415; i++)
|
||||||
|
EnableMenuItem(menu,i,MF_GRAYED | MF_BYCOMMAND);
|
||||||
//for (i = 600; i < 1000; i++) {
|
//for (i = 600; i < 1000; i++) {
|
||||||
// EnableMenuItem(menu,i,MF_GRAYED | MF_BYCOMMAND);
|
// EnableMenuItem(menu,i,MF_GRAYED | MF_BYCOMMAND);
|
||||||
// }
|
// }
|
||||||
@@ -3362,40 +3360,42 @@ void shut_down_menus(short mode)
|
|||||||
// EnableMenuItem(menu,i,MF_GRAYED | MF_BYCOMMAND);
|
// EnableMenuItem(menu,i,MF_GRAYED | MF_BYCOMMAND);
|
||||||
// }
|
// }
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if ((mode == 1) || (mode == 3)) {
|
||||||
|
for (i = 201; i < 212; i++)
|
||||||
|
EnableMenuItem(menu,i,MF_GRAYED | MF_BYCOMMAND);
|
||||||
|
for (i = 217; i < 221; i++)
|
||||||
|
EnableMenuItem(menu,i,MF_GRAYED | MF_BYCOMMAND);
|
||||||
|
//for (i = 600; i < 1000; i++) {
|
||||||
|
// EnableMenuItem(menu,i,MF_GRAYED | MF_BYCOMMAND);
|
||||||
|
// }
|
||||||
|
//for (i = 1000; i < 1256; i++) {
|
||||||
|
// EnableMenuItem(menu,i,MF_GRAYED | MF_BYCOMMAND);
|
||||||
|
// }
|
||||||
|
}
|
||||||
|
|
||||||
|
if ((mode == 2) || (mode == 3)) {
|
||||||
|
for (i = 301; i < 308; i++)
|
||||||
|
EnableMenuItem(menu,i,MF_GRAYED | MF_BYCOMMAND);
|
||||||
|
}
|
||||||
|
|
||||||
if (mode == 4) {
|
if (mode == 4) {
|
||||||
EnableMenuItem(menu,1,MF_ENABLED | MF_BYCOMMAND);
|
for (i = 1; i < 6; i++)
|
||||||
EnableMenuItem(menu,2,MF_ENABLED | MF_BYCOMMAND);
|
EnableMenuItem(menu,i,MF_ENABLED | MF_BYCOMMAND);
|
||||||
EnableMenuItem(menu,3,MF_ENABLED | MF_BYCOMMAND);
|
for (i = 101; i < 124; i++)
|
||||||
EnableMenuItem(menu,5,MF_ENABLED | MF_BYCOMMAND);
|
EnableMenuItem(menu,i,MF_ENABLED | MF_BYCOMMAND);
|
||||||
for (i = 0; i < 20; i++)
|
for (i = 201; i < 222; i++)
|
||||||
EnableMenuItem(menu,scen_items[i],MF_ENABLED | MF_BYCOMMAND);
|
EnableMenuItem(menu,i,MF_ENABLED | MF_BYCOMMAND);
|
||||||
for (i = 0; i < 17; i++)
|
for (i = 301; i < 314; i++)
|
||||||
EnableMenuItem(menu,town_items[i],MF_ENABLED | MF_BYCOMMAND);
|
EnableMenuItem(menu,i,MF_ENABLED | MF_BYCOMMAND);
|
||||||
for (i = 0; i < 10; i++)
|
for (i = 401; i < 415; i++)
|
||||||
EnableMenuItem(menu,out_items[i],MF_ENABLED | MF_BYCOMMAND);
|
EnableMenuItem(menu,i,MF_ENABLED | MF_BYCOMMAND);
|
||||||
for (i = 0; i < 10; i++)
|
|
||||||
EnableMenuItem(menu,401+i,MF_ENABLED | MF_BYCOMMAND);
|
|
||||||
//for (i = 600; i < 1000; i++) {
|
//for (i = 600; i < 1000; i++) {
|
||||||
// EnableMenuItem(menu,i,MF_ENABLED | MF_BYCOMMAND);
|
// EnableMenuItem(menu,i,MF_ENABLED | MF_BYCOMMAND);
|
||||||
// }
|
// }
|
||||||
//for (i = 1000; i < 1256; i++) {
|
//for (i = 1000; i < 1256; i++) {
|
||||||
// EnableMenuItem(menu,i,MF_ENABLED | MF_BYCOMMAND);
|
// EnableMenuItem(menu,i,MF_ENABLED | MF_BYCOMMAND);
|
||||||
// }
|
// }
|
||||||
|
|
||||||
}
|
|
||||||
if ((mode == 1) || (mode == 3)) {
|
|
||||||
for (i = 0; i < 9; i++)
|
|
||||||
EnableMenuItem(menu,town_items[i],MF_GRAYED | MF_BYCOMMAND);
|
|
||||||
//for (i = 600; i < 1000; i++) {
|
|
||||||
// EnableMenuItem(menu,i,MF_GRAYED | MF_BYCOMMAND);
|
|
||||||
// }
|
|
||||||
//for (i = 1000; i < 1256; i++) {
|
|
||||||
// EnableMenuItem(menu,i,MF_GRAYED | MF_BYCOMMAND);
|
|
||||||
// }
|
|
||||||
}
|
|
||||||
if ((mode == 2) || (mode == 3)) {
|
|
||||||
for (i = 0; i < 7; i++)
|
|
||||||
EnableMenuItem(menu,out_items[i],MF_GRAYED | MF_BYCOMMAND);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -51,6 +51,8 @@ Boolean cur_scen_is_win = TRUE;
|
|||||||
talking_record_type *dummy_talk_ptr;
|
talking_record_type *dummy_talk_ptr;
|
||||||
town_record_type *dummy_town_ptr;
|
town_record_type *dummy_town_ptr;
|
||||||
extern char file_path_name[256];
|
extern char file_path_name[256];
|
||||||
|
void object_scenario_data_dump();
|
||||||
|
extern item_storage_shortcut_type store_storage;
|
||||||
|
|
||||||
// Big waste!
|
// Big waste!
|
||||||
char last_load_file[63] = "newscen.exs";
|
char last_load_file[63] = "newscen.exs";
|
||||||
@@ -1240,7 +1242,7 @@ void start_town_data_dump()
|
|||||||
WriteFile(data_dump_file_id, get_text,strlen(get_text),&dwByteRead,NULL);
|
WriteFile(data_dump_file_id, get_text,strlen(get_text),&dwByteRead,NULL);
|
||||||
|
|
||||||
for (i = 0; i < 50; i++) {
|
for (i = 0; i < 50; i++) {
|
||||||
if (town.spec_id[i] < 255){
|
if ((town.specials[i].type > 0) || (town.specials[i].jumpto >= 0)) {
|
||||||
get_str(spec_name,22,town.specials[town.spec_id[i]].type + 1);
|
get_str(spec_name,22,town.specials[town.spec_id[i]].type + 1);
|
||||||
sprintf(get_text," Placed special %d: x = %d, y = %d, state = %d, name = %s\r",i,town.special_locs[i].x,town.special_locs[i].y,town.spec_id[i],spec_name);
|
sprintf(get_text," Placed special %d: x = %d, y = %d, state = %d, name = %s\r",i,town.special_locs[i].x,town.special_locs[i].y,town.spec_id[i],spec_name);
|
||||||
WriteFile(data_dump_file_id, get_text,strlen(get_text),&dwByteRead,NULL);
|
WriteFile(data_dump_file_id, get_text,strlen(get_text),&dwByteRead,NULL);
|
||||||
@@ -1311,7 +1313,7 @@ void start_town_data_dump()
|
|||||||
sprintf(get_text,"\r\r Town Special Nodes: [100]\r");
|
sprintf(get_text,"\r\r Town Special Nodes: [100]\r");
|
||||||
WriteFile(data_dump_file_id, get_text,strlen(get_text),&dwByteRead,NULL);
|
WriteFile(data_dump_file_id, get_text,strlen(get_text),&dwByteRead,NULL);
|
||||||
for (i = 0; i < 100; i++) {
|
for (i = 0; i < 100; i++) {
|
||||||
if (town.specials[i].type > 0) {
|
if ((town.specials[i].type > 0) || (town.specials[i].jumpto >= 0)) {
|
||||||
get_str(spec_name,22,town.specials[i].type + 1);
|
get_str(spec_name,22,town.specials[i].type + 1);
|
||||||
sprintf(get_text," Town special %d: Type = %d, SD1 = %d, SD2 = %d, Pic = %d, M1 = %d, M2 = %d, Ex1a = %d, Ex1b = %d, Ex2a = %d, Ex2b = %d, JumpTo = %d, Name = %s\r",i,town.specials[i].type,town.specials[i].sd1,town.specials[i].sd2,town.specials[i].pic,town.specials[i].m1,town.specials[i].m2,town.specials[i].ex1a,town.specials[i].ex1b,town.specials[i].ex2a,town.specials[i].ex2b,town.specials[i].jumpto,spec_name);
|
sprintf(get_text," Town special %d: Type = %d, SD1 = %d, SD2 = %d, Pic = %d, M1 = %d, M2 = %d, Ex1a = %d, Ex1b = %d, Ex2a = %d, Ex2b = %d, JumpTo = %d, Name = %s\r",i,town.specials[i].type,town.specials[i].sd1,town.specials[i].sd2,town.specials[i].pic,town.specials[i].m1,town.specials[i].m2,town.specials[i].ex1a,town.specials[i].ex1b,town.specials[i].ex2a,town.specials[i].ex2b,town.specials[i].jumpto,spec_name);
|
||||||
WriteFile(data_dump_file_id, get_text,strlen(get_text),&dwByteRead,NULL);
|
WriteFile(data_dump_file_id, get_text,strlen(get_text),&dwByteRead,NULL);
|
||||||
@@ -1323,6 +1325,76 @@ void start_town_data_dump()
|
|||||||
CloseHandle(data_dump_file_id);
|
CloseHandle(data_dump_file_id);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void object_scenario_data_dump()
|
||||||
|
{
|
||||||
|
short i,j;
|
||||||
|
char get_text[280], spec_name[256];
|
||||||
|
HANDLE data_dump_file_id;
|
||||||
|
DWORD dwByteRead;
|
||||||
|
|
||||||
|
data_dump_file_id = CreateFile("BoE Scenario Object data.txt", GENERIC_WRITE, FILE_SHARE_READ, NULL,
|
||||||
|
CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL, NULL);
|
||||||
|
if (data_dump_file_id == INVALID_HANDLE_VALUE)
|
||||||
|
{
|
||||||
|
oops_error(28);
|
||||||
|
beep();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
sprintf(get_text,"\n\nConcise Scenario Object Data Printout for %s\n\n",scen_strs[0]);
|
||||||
|
WriteFile(data_dump_file_id, get_text,strlen(get_text),&dwByteRead,NULL);
|
||||||
|
sprintf(get_text," For rectangles: \"tl\" = the top and left corner of the rectangle while \"br\" = the bottom and right corner.\n\n Maximum number of any given type of town object is shown by \"[ # ]\".\n Null objects are frequently not listed.\n\n");
|
||||||
|
WriteFile(data_dump_file_id, get_text,strlen(get_text),&dwByteRead,NULL);
|
||||||
|
sprintf(get_text,"The Special Items [50]\n Special Item Properties: A value of 1 means that the Special Item can be used,\n while a value of 10 means that the party starts the scenario with the item. \n A value of 11 means that it can be used and the party starts with it.\n\n");
|
||||||
|
WriteFile(data_dump_file_id, get_text,strlen(get_text),&dwByteRead,NULL);
|
||||||
|
|
||||||
|
for (short i = 0; i < 50; i++) {
|
||||||
|
sprintf(get_text,"Special Item %d: Scenario Special Called = %d, Properties = %d, Name = \"%s\"\n",i,scenario.special_item_special[i],scenario.special_items[i],scen_strs[60 + i * 2]);
|
||||||
|
WriteFile(data_dump_file_id, get_text,strlen(get_text),&dwByteRead,NULL);
|
||||||
|
}
|
||||||
|
sprintf(get_text,"\n\nItem Storage Shortcuts [10]\n");
|
||||||
|
WriteFile(data_dump_file_id, get_text,strlen(get_text),&dwByteRead,NULL);
|
||||||
|
|
||||||
|
for (short i = 0; i < 10; i++) {
|
||||||
|
sprintf(get_text,"Shortcut %d: All Items Property = %d, Terrain type = %d, Name = %s\n",i,scenario.storage_shortcuts[i].property,scenario.storage_shortcuts[i].ter_type,scen_item_list.ter_names[scenario.storage_shortcuts[i].ter_type]);
|
||||||
|
WriteFile(data_dump_file_id, get_text,strlen(get_text),&dwByteRead,NULL);
|
||||||
|
}
|
||||||
|
sprintf(get_text,"\n\n Scenario Horse Records: [30]\n");
|
||||||
|
WriteFile(data_dump_file_id, get_text,strlen(get_text),&dwByteRead,NULL);
|
||||||
|
for (short i = 0; i < 30; i++) {
|
||||||
|
if (scenario.scen_horses[i].which_town >= 0) {
|
||||||
|
sprintf(get_text," Scenario Horse %d: Town = %d, X = %d, Y = %d, Property = %d\n",i,scenario.scen_horses[i].which_town,scenario.scen_horses[i].horse_loc.x,scenario.scen_horses[i].horse_loc.y,scenario.scen_horses[i].property);
|
||||||
|
WriteFile(data_dump_file_id, get_text,strlen(get_text),&dwByteRead,NULL);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
sprintf(get_text,"\n\n Scenario Boat Records: [30]\n");
|
||||||
|
|
||||||
|
WriteFile(data_dump_file_id, get_text,strlen(get_text),&dwByteRead,NULL);
|
||||||
|
for (short i = 0; i < 30; i++) {
|
||||||
|
if (scenario.scen_boats[i].which_town >= 0) {
|
||||||
|
sprintf(get_text," Scenario Boat %d: Town = %d, X = %d, Y = %d, Property = %d\n",i,scenario.scen_boats[i].which_town,scenario.scen_boats[i].boat_loc.x,scenario.scen_boats[i].boat_loc.y,scenario.scen_boats[i].property);
|
||||||
|
WriteFile(data_dump_file_id, get_text,strlen(get_text),&dwByteRead,NULL);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
sprintf(get_text,"\n\n Scenario Special Nodes: [256]\n");
|
||||||
|
WriteFile(data_dump_file_id, get_text,strlen(get_text),&dwByteRead,NULL);
|
||||||
|
for (short i = 0; i < 256; i++) {
|
||||||
|
if ((scenario.scen_specials[i].type > 0) || (scenario.scen_specials[i].jumpto >= 0)) {
|
||||||
|
get_str(spec_name,22,town.specials[i].type + 1);
|
||||||
|
sprintf(get_text," Scenario special %d: Type = %d, SD1 = %d, SD2 = %d, Pic = %d, M1 = %d, M2 = %d, Ex1a = %d, Ex1b = %d, Ex2a = %d, Ex2b = %d, JumpTo = %d, Name = %s\n",i,scenario.scen_specials[i].type,scenario.scen_specials[i].sd1,scenario.scen_specials[i].sd2,scenario.scen_specials[i].pic,scenario.scen_specials[i].m1,scenario.scen_specials[i].m2,scenario.scen_specials[i].ex1a,scenario.scen_specials[i].ex1b,scenario.scen_specials[i].ex2a,scenario.scen_specials[i].ex2b,scenario.scen_specials[i].jumpto,spec_name);
|
||||||
|
WriteFile(data_dump_file_id, get_text,strlen(get_text),&dwByteRead,NULL);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
sprintf(get_text,"\n\n");
|
||||||
|
WriteFile(data_dump_file_id, get_text,strlen(get_text),&dwByteRead,NULL);
|
||||||
|
|
||||||
|
CloseHandle(data_dump_file_id);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
void start_data_dump()
|
void start_data_dump()
|
||||||
{
|
{
|
||||||
short i,j,last_town = cur_town;
|
short i,j,last_town = cur_town;
|
||||||
|
|||||||
Reference in New Issue
Block a user