summaryrefslogtreecommitdiff
path: root/data/maps/LilycoveCity_DepartmentStoreElevator/scripts.inc
blob: d7d152408d6fa698969594a444c33f117d5c2105 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
LilycoveCity_DepartmentStoreElevator_MapScripts::
	.byte 0

LilycoveCity_DepartmentStoreElevator_EventScript_Attendant::
	lock
	faceplayer
	setvar VAR_0x8004, 0
	call_if_unset FLAG_TEMP_2, LilycoveCity_DepartmentStoreElevator_EventScript_SetFloor
	copyvar VAR_0x8005, VAR_DEPT_STORE_FLOOR
	special ShowDeptStoreElevatorFloorSelect
	message gText_WhichFloorWouldYouLike
	waitmessage
	setvar VAR_0x8004, 0
	specialvar VAR_RESULT, GetDeptStoreDefaultFloorChoice
	switch VAR_RESULT
	case 0, LilycoveCity_DepartmentStoreElevator_EventScript_ChooseFloorFrom5th
	case 1, LilycoveCity_DepartmentStoreElevator_EventScript_ChooseFloorFrom4th
	case 2, LilycoveCity_DepartmentStoreElevator_EventScript_ChooseFloorFrom3rd
	case 3, LilycoveCity_DepartmentStoreElevator_EventScript_ChooseFloorFrom2nd
	case 4, LilycoveCity_DepartmentStoreElevator_EventScript_ChooseFloorFrom1st
	end

@ Below scripts ensure the cursor for floor select always starts on the current floor
LilycoveCity_DepartmentStoreElevator_EventScript_ChooseFloorFrom5th::
	multichoicedefault 0, 0, MULTI_FLOORS, 0, FALSE
	goto LilycoveCity_DepartmentStoreElevator_EventScript_ChooseFloor
	end

LilycoveCity_DepartmentStoreElevator_EventScript_ChooseFloorFrom4th::
	multichoicedefault 0, 0, MULTI_FLOORS, 1, FALSE
	goto LilycoveCity_DepartmentStoreElevator_EventScript_ChooseFloor
	end

LilycoveCity_DepartmentStoreElevator_EventScript_ChooseFloorFrom3rd::
	multichoicedefault 0, 0, MULTI_FLOORS, 2, FALSE
	goto LilycoveCity_DepartmentStoreElevator_EventScript_ChooseFloor
	end

LilycoveCity_DepartmentStoreElevator_EventScript_ChooseFloorFrom2nd::
	multichoicedefault 0, 0, MULTI_FLOORS, 3, FALSE
	goto LilycoveCity_DepartmentStoreElevator_EventScript_ChooseFloor
	end

LilycoveCity_DepartmentStoreElevator_EventScript_ChooseFloorFrom1st::
	multichoicedefault 0, 0, MULTI_FLOORS, 4, FALSE
	goto LilycoveCity_DepartmentStoreElevator_EventScript_ChooseFloor
	end

LilycoveCity_DepartmentStoreElevator_EventScript_ChooseFloor::
	switch VAR_RESULT
	case 0, LilycoveCity_DepartmentStoreElevator_EventScript_5thFloor
	case 1, LilycoveCity_DepartmentStoreElevator_EventScript_4thFloor
	case 2, LilycoveCity_DepartmentStoreElevator_EventScript_3rdFloor
	case 3, LilycoveCity_DepartmentStoreElevator_EventScript_2ndFloor
	case 4, LilycoveCity_DepartmentStoreElevator_EventScript_1stFloor
	case 5, LilycoveCity_DepartmentStoreElevator_EventScript_ExitFloorSelect
	case MULTI_B_PRESSED, LilycoveCity_DepartmentStoreElevator_EventScript_ExitFloorSelect
	end

LilycoveCity_DepartmentStoreElevator_EventScript_1stFloor::
	setvar VAR_0x8006, DEPT_STORE_FLOORNUM_1F
	setdynamicwarp MAP_LILYCOVE_CITY_DEPARTMENT_STORE_1F, 2, 1
	goto_if_eq VAR_DEPT_STORE_FLOOR, DEPT_STORE_FLOORNUM_1F, LilycoveCity_DepartmentStoreElevator_EventScript_ExitFloorSelect
	call LilycoveCity_DepartmentStoreElevator_EventScript_MoveElevator
	setvar VAR_DEPT_STORE_FLOOR, DEPT_STORE_FLOORNUM_1F
	goto LilycoveCity_DepartmentStoreElevator_EventScript_ExitFloorSelect
	end

LilycoveCity_DepartmentStoreElevator_EventScript_2ndFloor::
	setvar VAR_0x8006, DEPT_STORE_FLOORNUM_2F
	setdynamicwarp MAP_LILYCOVE_CITY_DEPARTMENT_STORE_2F, 2, 1
	goto_if_eq VAR_DEPT_STORE_FLOOR, DEPT_STORE_FLOORNUM_2F, LilycoveCity_DepartmentStoreElevator_EventScript_ExitFloorSelect
	call LilycoveCity_DepartmentStoreElevator_EventScript_MoveElevator
	setvar VAR_DEPT_STORE_FLOOR, DEPT_STORE_FLOORNUM_2F
	goto LilycoveCity_DepartmentStoreElevator_EventScript_ExitFloorSelect
	end

LilycoveCity_DepartmentStoreElevator_EventScript_3rdFloor::
	setvar VAR_0x8006, DEPT_STORE_FLOORNUM_3F
	setdynamicwarp MAP_LILYCOVE_CITY_DEPARTMENT_STORE_3F, 2, 1
	goto_if_eq VAR_DEPT_STORE_FLOOR, DEPT_STORE_FLOORNUM_3F, LilycoveCity_DepartmentStoreElevator_EventScript_ExitFloorSelect
	call LilycoveCity_DepartmentStoreElevator_EventScript_MoveElevator
	setvar VAR_DEPT_STORE_FLOOR, DEPT_STORE_FLOORNUM_3F
	goto LilycoveCity_DepartmentStoreElevator_EventScript_ExitFloorSelect
	end

LilycoveCity_DepartmentStoreElevator_EventScript_4thFloor::
	setvar VAR_0x8006, DEPT_STORE_FLOORNUM_4F
	setdynamicwarp MAP_LILYCOVE_CITY_DEPARTMENT_STORE_4F, 2, 1
	goto_if_eq VAR_DEPT_STORE_FLOOR, DEPT_STORE_FLOORNUM_4F, LilycoveCity_DepartmentStoreElevator_EventScript_ExitFloorSelect
	call LilycoveCity_DepartmentStoreElevator_EventScript_MoveElevator
	setvar VAR_DEPT_STORE_FLOOR, DEPT_STORE_FLOORNUM_4F
	goto LilycoveCity_DepartmentStoreElevator_EventScript_ExitFloorSelect
	end

LilycoveCity_DepartmentStoreElevator_EventScript_5thFloor::
	setvar VAR_0x8006, DEPT_STORE_FLOORNUM_5F
	setdynamicwarp MAP_LILYCOVE_CITY_DEPARTMENT_STORE_5F, 2, 1
	goto_if_eq VAR_DEPT_STORE_FLOOR, DEPT_STORE_FLOORNUM_5F, LilycoveCity_DepartmentStoreElevator_EventScript_ExitFloorSelect
	call LilycoveCity_DepartmentStoreElevator_EventScript_MoveElevator
	setvar VAR_DEPT_STORE_FLOOR, DEPT_STORE_FLOORNUM_5F
	goto LilycoveCity_DepartmentStoreElevator_EventScript_ExitFloorSelect
	end

LilycoveCity_DepartmentStoreElevator_EventScript_ExitFloorSelect::
	special CloseDeptStoreElevatorWindow
	release
	end

LilycoveCity_DepartmentStoreElevator_EventScript_MoveElevator::
	special CloseDeptStoreElevatorWindow
	closemessage
	applymovement VAR_LAST_TALKED, Common_Movement_WalkInPlaceFasterDown
	waitmovement 0
	waitse
	special MoveElevator
	waitstate
	setflag FLAG_TEMP_2
	return

LilycoveCity_DepartmentStoreElevator_EventScript_SetFloor::
	special SetDeptStoreFloor
	return