Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- [ENABLE]
- alloc(Teleport,512)
- label(TeleportRet)
- alloc(LootState,4)
- alloc(LootCount,4)
- label(StartLooting)
- label(StopLooting)
- label(LootRet)
- // Mobs
- alloc(RangeX,12)
- alloc(RangeY,12)
- alloc(MobState,4)
- label(ChangeMobState)
- label(StateZero)
- label(StateOne)
- label(GoodMonster)
- label(BadMonster)
- label(ContinueKami)
- label(MobKami)
- label(MobEnd)
- // Items
- alloc(ItemXYHook,128)
- alloc(ItemX,12)
- alloc(ItemY,12)
- label(ItemKami)
- label(ItemEnd)
- LootCount:
- dd #20
- RangeX:
- dd #25
- RangeY:
- dd #00
- Teleport:
- push eax
- mov eax,[00E1A370] // Item Base
- mov eax,[eax+14] // Item Counter
- cmp eax,00
- je StopLooting
- cmp eax,[LootCount]
- jge StartLooting
- LootRet:
- pop eax
- cmp [LootState],01
- je ItemKami
- jmp MobKami
- StartLooting:
- mov [LootState],01
- jmp LootRet
- StopLooting:
- mov [LootState],00
- jmp LootRet
- ChangeMobState:
- cmp [MobState],01
- je StateZero
- jmp StateOne
- StateZero:
- mov [MobState],00
- jmp ContinueKami
- StateOne:
- mov [MobState],01
- jmp ContinueKami
- MobKami:
- pushad
- mov esi,[00E17AF4] // Mob Base
- cmp [esi+24],0 // Mob Counter Offset
- je MobEnd
- mov eax,[00E17AF4] //Mob Base
- mov eax,[eax+28] // Get Mob Structure Offset
- cmp [MobState],00
- jne GoodMonster
- mov eax,[eax-12] // Get Closest Monster
- mov eax,[eax+14] // Get Closest Monster
- jmp BadMonster
- GoodMonster:
- mov eax,[eax+04] // Get Mob Structure Offset
- mov eax,[eax+10C] // Get Mob Structure Offset
- mov eax,[eax+24] // Get Mob Structure Offset
- BadMonster:
- cmp [eax+424],00 // Mob Death Offset I believe it never changed since the birth of maplestory...
- je ChangeMobState
- ContinueKami:
- mov ebx,[eax+58] // Mob X Offset
- sub ebx,[RangeX]
- mov eax,[eax+5C] // Mob Y Offset
- sub eax,[RangeY]
- mov ecx,[00E17A2C] // Char pID Base
- mov esi,[00E17A80] // Wall Base
- cmp [esi+1C],ebx // Left Wall Offset
- jg MobEnd
- cmp [esi+20],eax // Left Wall + 4
- jg MobEnd
- cmp [esi+24],ebx // Left Wall + 8
- jl MobEnd
- cmp [esi+28],eax // Left Wall + 12
- jl MobEnd
- mov [ecx+4410],ebx // Teleport X Offset
- mov [ecx+4414],eax // Teleport Y Offset
- mov [ecx+4408],01 // Teleport Toggle Offset
- MobEnd:
- popad
- jmp TeleportRet
- ItemXYHook:
- cmp [esp],00E1A370 // Item Base
- jne PtInRect
- push eax
- mov eax,[esp+0C]
- mov [ItemX],eax
- mov eax,[esp+10]
- mov [ItemY],eax
- pop eax
- jmp PtInRect
- ItemKami:
- pushad
- mov esi,[00E17AF4] // Mob Base
- cmp [esi+24],0 // Mob Counter Offset
- je ItemEnd
- mov eax,[ItemX]
- mov ebx,[ItemY]
- mov ecx,[00E17A2C] // Char pID Base
- mov [ecx+4410],eax // Teleport X Offset
- mov [ecx+4414],ebx // Teleport Y Offset
- mov [ecx+4408],01 // Teleport Toggle Offset
- ItemEnd:
- popad
- jmp TeleportRet
- 00A2F3C6:
- jmp Teleport
- db 90
- TeleportRet:
- 0053198F:
- dd ItemXYHook
- [DISABLE]
- 00A2F3C6: // 0F 84 ? ? ? ? 8B 8E ? ? ? ? 2B C8 [2nd result]
- db 0F 84 5C 01 00 00
- 0053198F: // FF ? ? ? ? 00 85 ? 75 ? ? 4C 24 ? C7 44 24 ? FF
- dd PtInRect
Add Comment
Please, Sign In to add comment