Ejemplo n.º 1
0
void check_cd_event(HWND hwnd,UINT message,WPARAM wparam,LPARAM lparam)
{
	POINT press;
	short wind_hit = -1,item_hit = -1;

	switch (message) {
		case WM_COMMAND:
			if (LOWORD(wparam) == 150)
				break;
  			cd_find_dlog(hwnd,&wind_hit,&item_hit); // item_hit is dummy
			item_hit = (short) LOWORD(wparam);
			break;
		case WM_KEYDOWN:
			wind_hit = cd_process_syskeystroke(hwnd, wparam, lparam,&item_hit);
			break;

		case WM_CHAR:
			wind_hit = cd_process_keystroke(hwnd, wparam, lparam,&item_hit);
			break;

		case WM_LBUTTONDOWN:
			press = MAKEPOINT(lparam);
			wind_hit = cd_process_click(hwnd,press, wparam, lparam,&item_hit);
			break;
		case WM_RBUTTONDOWN:
			press = MAKEPOINT(lparam);
			wparam = wparam | MK_CONTROL;
			wind_hit = cd_process_click(hwnd,press, wparam, lparam,&item_hit);
			break;

		case WM_PAINT:
			cd_redraw(hwnd);
			break;
		}
	if (wind_hit < 0)
		return;
	switch (wind_hit) {
		case -1: break;
		case 917: edit_day_event_filter(item_hit); break;
		case 970: case 971: case 972: case 973: display_strings_event_filter(item_hit); break;
		case 991: display_pc_event_filter(item_hit); break;
		case 996: display_alchemy_event_filter(item_hit); break;
		case 1010: spend_xp_event_filter (item_hit); break;
		case 1012: case 947: edit_gold_or_food_event_filter (item_hit); break;
		case 1013: pick_race_abil_event_filter (item_hit); break;
		case 1018: select_pc_event_filter (item_hit); break;
		case 1024: edit_xp_event_filter (item_hit); break;
		default: fancy_choice_dialog_event_filter (item_hit); break;
  		}
}
Ejemplo n.º 2
0
short check_cd_event(HWND hwnd, UINT message, WPARAM wparam,LPARAM lparam)
{
	POINT press;
	short wind_hit = -1,item_hit = -1;

	switch (message) {
		case WM_COMMAND:
			if ((LOWORD(wparam) >= 150) && (LOWORD(wparam) <= 250))  {

				if (HIWORD(wparam) == EN_ERRSPACE)
					play_sound(0);

				return 0;
				}
			cd_find_dlog(hwnd,&wind_hit,&item_hit); // item_hit is dummy
			item_hit = (short) wparam;
			break;
		case WM_KEYDOWN:
			if ((wparam >= 150) && (wparam <= 250)) {
					return -1;
				}
			wind_hit = cd_process_syskeystroke(hwnd, wparam, lparam,&item_hit);
			break;

		case WM_CHAR:
			wind_hit = cd_process_keystroke(hwnd, wparam, lparam,&item_hit);
			break;

		case WM_LBUTTONDOWN:
			press = MAKEPOINT(lparam);
			wind_hit = cd_process_click(hwnd,press, wparam, lparam,&item_hit);
			break;
		case WM_RBUTTONDOWN:
			press = MAKEPOINT(lparam);
			wparam = wparam | MK_CONTROL;
			wind_hit = cd_process_click(hwnd,press, wparam, lparam,&item_hit);
			break;
		case WM_MOUSEMOVE:
			restore_cursor();
			break;
		case WM_PAINT:
			cd_redraw(hwnd);
			break;
		}
	if (wind_hit < 0)
		return 0;
	switch (wind_hit) {
		case -1: break;
		case 970: case 971: case 972: case 973: display_strings_event_filter(item_hit); break;
		case 800: edit_make_scen_1_event_filter(item_hit); break;
		case 801: edit_make_scen_2_event_filter(item_hit); break;
		case 803: edit_scen_details_event_filter(item_hit); break;
		case 804: edit_scen_intro_event_filter(item_hit); break;
		case 805: set_starting_loc_filter(item_hit); break;
		case 806: edit_spec_item_event_filter(item_hit); break;
		case 807: edit_save_rects_event_filter(item_hit); break;
		case 808: edit_horses_event_filter(item_hit); break;
		case 809: edit_boats_event_filter(item_hit); break;
		case 810: edit_add_town_event_filter(item_hit); break;
		case 811: edit_scenario_events_event_filter(item_hit); break;
		case 812: edit_item_placement_event_filter(item_hit); break;
		case 813: edit_ter_type_event_filter(item_hit); break;
		case 814: edit_monst_type_event_filter(item_hit); break;
		case 815: edit_monst_abil_event_filter(item_hit); break;
		case 816: edit_text_event_filter(item_hit); break;
		case 817: edit_talk_node_event_filter(item_hit); break;
		case 818: edit_item_type_event_filter(item_hit); break;
		case 819: choose_graphic_event_filter(item_hit); break;
		case 820: choose_text_res_event_filter(item_hit); break;
		case 821: edit_basic_dlog_event_filter(item_hit); break;
		case 822: edit_spec_enc_event_filter(item_hit); break;
		case 824: edit_item_abil_event_filter(item_hit); break;
		case 825: edit_special_num_event_filter(item_hit); break;
		case 826: edit_spec_text_event_filter(item_hit); break;
		case 830: new_town_event_filter(item_hit); break;
		case 831: edit_sign_event_filter(item_hit); break;
		case 832: edit_town_details_event_filter(item_hit); break;
		case 833: edit_town_events_event_filter(item_hit); break;
		case 834: edit_advanced_town_event_filter(item_hit); break;
		case 835: edit_town_wand_event_filter(item_hit); break;
		case 836: edit_placed_item_event_filter(item_hit); break;
		case 837: edit_placed_monst_event_filter(item_hit); break;
		case 838: edit_placed_monst_adv_event_filter(item_hit); break;
		case 839: edit_town_strs_event_filter(item_hit); break;
		case 840: edit_area_rect_event_filter(item_hit); break;
		case 841: pick_import_town_event_filter(item_hit); break;
		case 842: edit_dialog_text_event_filter(item_hit); break;
		case 850: edit_out_strs_event_filter(item_hit); break;
		case 851: outdoor_details_event_filter(item_hit); break;
		case 852: edit_out_wand_event_filter(item_hit); break;
		case 854: pick_out_event_filter(item_hit); break;
		case 855: case 856: pick_town_num_event_filter(item_hit); break;
		case 857: change_ter_event_filter(item_hit); break;
		default: fancy_choice_dialog_event_filter (item_hit); break;
		}
	return 0;
}