RowVar

Changes the function of the row-command in the default menu. The player has to select an actor as operand whose ID then will be stored in variable #3340. After that, the menu will exit.

Later variants of this come with more functions, see [2+] and [3+].

Originally made and first released by bugmenot.

RPG2003
1.00UNKNOWN1UNKNOWN21.0.2.1
1.0.2.1
1.0.3.0
1.0.4.0
1.0.5.0
1.0.5.0
1.0.6.0
1.0.6.0
1.0.7.0
1.0.7.0
1.0.8.0
1.0.8.0
1.0.9.1
1.0.9.1
1.101.111.12mp210414

Segment 1/1

Offsets

RPG2003
1.0.8.0
1.0.8.0
1.0.9.1
1.0.9.1
1.101.111.12mp210414
004A282Dh
000A1C2Dh
004A1B61h
000A0F61h

Sourcecode

			MOV EAX, [EBX+18h]
			MOV EDX, [EAX+44h]		; PartySlot
			MOV EAX, [004CDB74h]		; TLcfgPartyInfo
			MOV EAX, [EAX]
			CALL PROC__004A6014h		; TLcfgPartyInfo.GetSlotActor
			MOV ECX, [EAX+04h]		; ActorID
			MOV EDX, 3340			; RowVariable
			MOV EAX, [004CDC7Ch]		; TLcfgSystem
			MOV EAX, [EAX]
			CALL PROC__0048B3B0h		; TLcfgSystem.SetVariable
			JMP __004A2740h			; ExitMenu
			MOV EAX, [EBX+18h]
			MOV EDX, [EAX+44h]		; PartySlot
			MOV EAX, [004CDB74h]		; TLcfgPartyInfo
			MOV EAX, [EAX]
			CALL PROC__004A439Ch		; TLcfgPartyInfo.GetSlotActor
			MOV ECX, [EAX+04h]		; ActorID
			MOV EDX, 3340			; RowVariable
			MOV EAX, [004CDC7Ch]		; TLcfgSystem
			MOV EAX, [EAX]
			CALL PROC__0048B36Ch		; TLcfgSystem.SetVariable
			JMP __004A1A74h			; ExitMenu

Bytes

8B4318 8B5044 A174DB4C00 8B00 E8D5370000
8B4804 BA0C0D0000 A17CDC4C00 8B00 E85D8BFEFF
E9E8FEFFFF
8B4318 8B5044 A174DB4C00 8B00 E829280000
8B4804 BA0C0D0000 A17CDC4C00 8B00 E8E797FEFF
E9EAFEFFFF