Difference between revisions of "Change Item Quantity on Equip"
Jump to navigation
Jump to search
m (Talcall moved page 001208b8 - 001208f4 to Change Item Quantity on Equip) |
|||
Line 1: | Line 1: | ||
<font face='Courier New'> | <font face='Courier New'> | ||
+ | # Add a value to the item quantity in the inventory. | ||
+ | # Parameters: | ||
+ | # r4 = Item Number | ||
+ | # r5 = Value (positive or negative acceptable) | ||
+ | # | ||
+ | # Return Value: | ||
+ | # item quantity | ||
− | 001208b8: 308403ff andi r4,r4,0x03ff | + | 001208b8: 308403ff andi r4,r4,0x03ff # |
− | 001208bc: 1080000c beq r4,r0,0x001208f0 | + | 001208bc: 1080000c beq r4,r0,0x001208f0 # if Item Number AND 0x3FF = 0 |
− | 001208c0: 00001021 addu r2,r0,r0 | + | 001208c0: 00001021 addu r2,r0,r0 # return 0 |
− | 001208c4: 3c018006 lui r1,0x8006 | + | 001208c4: 3c018006 lui r1,0x8006 # |
− | 001208c8: 00240821 addu r1,r1,r4 | + | 001208c8: 00240821 addu r1,r1,r4 # |
− | 001208cc: 902296e0 lbu r2,-0x6920(r1) | + | 001208cc: 902296e0 lbu r2,-0x6920(r1) # r2 = item quantity |
− | 001208d0: 00000000 nop | + | 001208d0: 00000000 nop # |
− | 001208d4: 00451021 addu r2,r2,r5 | + | 001208d4: 00451021 addu r2,r2,r5 # item quantity - r5 |
− | 001208d8: 04410002 bgez r2,0x001208e4 | + | 001208d8: 04410002 bgez r2,0x001208e4 # if item quantity - r5 is negative |
− | 001208dc: 00000000 nop | + | 001208dc: 00000000 nop # |
− | 001208e0: 00001021 addu r2,r0,r0 | + | 001208e0: 00001021 addu r2,r0,r0 # item quantity = 0 |
− | 001208e4: 3c018006 lui r1,0x8006 | + | 001208e4: 3c018006 lui r1,0x8006 # |
− | 001208e8: 00240821 addu r1,r1,r4 | + | 001208e8: 00240821 addu r1,r1,r4 # |
− | 001208ec: a02296e0 sb r2,-0x6920(r1) | + | 001208ec: a02296e0 sb r2,-0x6920(r1) # store item quantity |
− | 001208f0: 03e00008 jr r31 | + | 001208f0: 03e00008 jr r31 # return item quantity |
− | 001208f4: 00000000 nop | + | 001208f4: 00000000 nop # |
</font> | </font> |
Revision as of 04:18, 26 September 2024
# Add a value to the item quantity in the inventory. # Parameters: # r4 = Item Number # r5 = Value (positive or negative acceptable) # # Return Value: # item quantity 001208b8: 308403ff andi r4,r4,0x03ff # 001208bc: 1080000c beq r4,r0,0x001208f0 # if Item Number AND 0x3FF = 0 001208c0: 00001021 addu r2,r0,r0 # return 0 001208c4: 3c018006 lui r1,0x8006 # 001208c8: 00240821 addu r1,r1,r4 # 001208cc: 902296e0 lbu r2,-0x6920(r1) # r2 = item quantity 001208d0: 00000000 nop # 001208d4: 00451021 addu r2,r2,r5 # item quantity - r5 001208d8: 04410002 bgez r2,0x001208e4 # if item quantity - r5 is negative 001208dc: 00000000 nop # 001208e0: 00001021 addu r2,r0,r0 # item quantity = 0 001208e4: 3c018006 lui r1,0x8006 # 001208e8: 00240821 addu r1,r1,r4 # 001208ec: a02296e0 sb r2,-0x6920(r1) # store item quantity 001208f0: 03e00008 jr r31 # return item quantity 001208f4: 00000000 nop #