Code:
;----------------------------------
;AIMBOT
;----------------------------------
; NAMES TO UPDATE
;
#set fullfunctionname "com.company.assembleegameclient.objects:Player/aim_" ; the full function name
#set functionname "aim_" ; the function name
#set mouseClass "com.company.assembleegameclient.game:_-VS#0" ; Found at the end of the onmousedown procedure : initproperty QName(PrivateNamespace("*", "com.company.assembleegameclient.game:_-0M4#0"), "_-0E")
#set mouseClicked "_-07U" ; Found at the end of the onmousedown procedure : initproperty QName(PrivateNamespace("*", "com.company.assembleegameclient.game:_-0M4#0"), "_-0E")
#set playerNamespace "_-093" ; Namespace of the Player class
#set characterNamespace "_-0Tw" ; Namespace of the Character class
#set gameobjectNamespace "_-L" ; Namespace of the GameObject class
#set basicobjectNamespace "_-34" ; Namespace of the BasicObject class
#set projectileNamespace "_-0eI" ; Namespace of the Projectile class
#set Aimbot_charMaxHealth "_-0oQ" ; Found in com/company/assembleegameclient/objects/GameObject.class.asasm [trait slot QName(PackageNamespace(""), "_-Name") type QName(PackageNamespace(""), "int") value Integer(200) end]
#set ObjLibDictionary "_-0Mq" ; Found in ObjectLibrary class, this is the slot 4 : trait const QName(PackageNamespace(""), "_-") slotid 4 type QName(PackageNamespace("flash.utils"), "Dictionary") end
#set gameobjVector "_-0u8" ;Found in GameObject class, this is the SECOND vector: trait slot QName(PackageNamespace(""), "") type TypeName(QName(PackageNamespace("__AS3__.vec"), "Vector")<QName(PackageNamespace(""), "int")>) value Null() end
#set ObjPropertiesDictionary "_-HD" ; Found in ObjProperties class : trait slot QName(PackageNamespace(""), "") type QName(PackageNamespace("flash.utils"), "Dictionary") end
#set FunctionIsInvincible "_-05C"
#set FunctionsIsStasis "_-0uQ"
#set FunctionsIsInvulnerable "_-0Nj"
trait method QName(PackageNamespace(""), $"functionname" );
method
refid $"fullfunctionname"
param QName(PackageNamespace(""), "Number")
returns QName(PackageNamespace(""), "void")
body
maxstack 16
localcount 16
initscopedepth 16
maxscopedepth 18
code
getlocal0
pushscope
;aimingAngle = arg1 + Parameters.data_.cameraAngle;
getlocal1
getlex QName(PackageNamespace("com.company.assembleegameclient.parameters"), "Parameters")
getproperty QName(PackageNamespace(""), "data_")
getproperty Multiname("cameraAngle", [PrivateNamespace("*", "com.company.assembleegameclient.objects:Player#0"), PackageNamespace(""), PrivateNamespace("*", "com.company.assembleegameclient.objects:Player#1"), PackageNamespace("com.company.assembleegameclient.objects"), PackageInternalNs("com.company.assembleegameclient.objects"), Namespace("https://adobe.com/AS3/2006/builtin"), ProtectedNamespace($"playerNamespace"), StaticProtectedNs($"playerNamespace"), StaticProtectedNs($"characterNamespace"), StaticProtectedNs($"gameobjectNamespace"), StaticProtectedNs($"basicobjectNamespace")])
add
setlocal 7
;if (Left_Clicking) don't alter aimingAngle
getlex QName(PackageNamespace(""), "map_")
getproperty QName(PackageNamespace(""), "gs_")
getproperty QName(PackageNamespace(""), "mui_")
getproperty QName(PrivateNamespace("*", $"mouseClass"), $"mouseClicked")
iftrue SHOOT
;Get game object
pushnull
coerce QName(PackageNamespace("com.company.assembleegameclient.objects"), "GameObject")
setlocal 4
;initialize current target distance to -1
pushbyte 255
setlocal 8
;initialize considered target distance to 0
pushbyte 0
setlocal 9
;set local register 11 to any type (used for speed and lifetime of player's projectile)
pushnull
coerce_a
setlocal 11
;current target max health
pushbyte 0
setlocal 12
;considered target max health
pushbyte 0
setlocal 13
;used for hasnext2 instruction
pushbyte 0
setlocal 5
;get the list of every object in game? jump to start going through list
getlex QName(PackageNamespace(""), "map_")
getproperty QName(PackageNamespace(""), "goDict_")
coerce_a
setlocal 6
jump NEXTOBJ
L34:
label
getlocal 6
getlocal 5
nextvalue
coerce QName(PackageNamespace("com.company.assembleegameclient.objects"), "GameObject")
dup
setlocal 4
;make sure object is a character and not something like a wall
getlex QName(PackageNamespace("com.company.assembleegameclient.objects"), "Character")
istypelate
iffalse NEXTOBJ
;make sure object is an enemy
getlocal 4
getproperty QName(PackageNamespace(""), "props_")
getproperty QName(PackageNamespace(""), "isEnemy_")
iffalse NEXTOBJ
getlocal 4
callproperty QName(PackageNamespace(""), $"FunctionIsInvincible"), 0 ;Check if target is INVINCIBLE
iftrue NEXTOBJ
getlocal 4
callproperty QName(PackageNamespace(""), $"FunctionsIsStasis"), 0 ;Check if target is in STASIS
iftrue NEXTOBJ
getlocal 4
callproperty QName(PackageNamespace(""), $"FunctionsIsInvulnerable"), 0 ;Check if target is INVULNERABLE
iftrue NEXTOBJ
;calculate distance enemy is from player
getlex QName(PackageNamespace(""), "Math")
getlocal 4
getproperty QName(PackageNamespace(""), "y_")
getlex QName(PackageNamespace(""), "y_")
subtract
dup
multiply
getlocal 4
getproperty QName(PackageNamespace(""), "x_")
getlex QName(PackageNamespace(""), "x_")
subtract
dup
multiply
add
callproperty QName(PackageNamespace(""), "sqrt"), 1
dup
setlocal 9
;load up equiped weapon info ???
getlex QName(PackageNamespace("com.company.assembleegameclient.objects"), "ObjectLibrary")
getproperty QName(PackageNamespace(""), $"ObjLibDictionary")
getlex QName(PackageNamespace(""), $"gameobjVector")
pushbyte 0
getproperty MultinameL([PrivateNamespace("*", "com.company.assembleegameclient.objects:Projectile#0"), PrivateNamespace("*", "com.company.assembleegameclient.objects:Projectile#1"), PackageNamespace(""), PackageNamespace("com.company.assembleegameclient.objects"), PackageInternalNs("com.company.assembleegameclient.objects"), Namespace("https://adobe.com/AS3/2006/builtin"), ProtectedNamespace($"projectileNamespace"), StaticProtectedNs($"projectileNamespace"), StaticProtectedNs($"basicobjectNamespace")])
convert_i
getproperty MultinameL([PrivateNamespace("*", "com.company.assembleegameclient.objects:Projectile#0"), PrivateNamespace("*", "com.company.assembleegameclient.objects:Projectile#1"), PackageNamespace(""), PackageNamespace("com.company.assembleegameclient.objects"), PackageInternalNs("com.company.assembleegameclient.objects"), Namespace("https://adobe.com/AS3/2006/builtin"), ProtectedNamespace($"projectileNamespace"), StaticProtectedNs($"projectileNamespace"), StaticProtectedNs($"basicobjectNamespace")])
getproperty QName(PackageNamespace(""), $"ObjPropertiesDictionary")
pushbyte 0
getproperty MultinameL([PrivateNamespace("*", "com.company.assembleegameclient.objects:Projectile#0"), PrivateNamespace("*", "com.company.assembleegameclient.objects:Projectile#1"), PackageNamespace(""), PackageNamespace("com.company.assembleegameclient.objects"), PackageInternalNs("com.company.assembleegameclient.objects"), Namespace("https://adobe.com/AS3/2006/builtin"), ProtectedNamespace($"projectileNamespace"), StaticProtectedNs($"projectileNamespace"), StaticProtectedNs($"basicobjectNamespace")])
dup
setlocal 11
;calculate if considered target is in range using weapon projectile speed and lifetime
getproperty QName(PackageNamespace(""), "speed_")
pushshort 10000
divide
getlocal 11
getproperty QName(PackageNamespace(""), "lifetime_")
multiply
pushbyte 1
add
ifgt NEXTOBJ
; DO NOT SHOOT MINIONS
getlocal 4
getproperty QName(PackageNamespace(""), "props_")
getproperty QName(PackageNamespace(""), "id_")
setlocal 15
getlocal 15
pushstring "Steel Bot"
ifeq NEXTOBJ
getlocal 15
pushstring "Rock Bot"
ifeq NEXTOBJ
getlocal 15
pushstring "Paper Bot"
ifeq NEXTOBJ
getlocal 15
pushstring "Shield Orc Shield"
ifeq NEXTOBJ
getlocal 15
pushstring "Shield Orc Key"
ifeq NEXTOBJ
getlocal 15
pushstring "Shield Orc Flooder"
ifeq NEXTOBJ
getlocal 15
pushstring "Blue Flaming Skull"
ifeq NEXTOBJ
getlocal 15
pushstring "Red Flaming Skull"
ifeq NEXTOBJ
getlocal 15
pushstring "Pentaract Eye"
ifeq NEXTOBJ
getlocal 15
pushstring "Beach Spectre"
ifeq NEXTOBJ
getlocal 15
pushstring "Cube Overseer"
ifeq NEXTOBJ
getlocal 15
pushstring "Mysterious Crystal"
ifeq NEXTOBJ
getlocal 15
pushstring "Crystal Prisoner Steed"
ifeq NEXTOBJ
getlocal 15
pushstring "Stheno Swarm"
ifeq NEXTOBJ
getlocal 15
pushstring "Stheno Pet"
ifeq NEXTOBJ
getlocal 15
pushstring "Cube Defender"
ifeq NEXTOBJ
getlocal 15
pushstring "Cube Blaster"
ifeq NEXTOBJ
getlocal 15
pushstring "Haunted Armor"
ifeq NEXTOBJ
;get considered target max health
getlocal 4
getproperty QName(PackageNamespace(""), $"Aimbot_charMaxHealth")
dup
setlocal 13
getlocal 12
ifeq L103
getlocal 13
getlocal 12
iflt NEXTOBJ
jump L107
L103:
getlocal 9
getlocal 8
iflt L107
jump NEXTOBJ
L107:
getlocal 13
setlocal 12
getlocal 9
setlocal 8
getlex QName(PackageNamespace(""), "Math")
getlocal 4
getproperty QName(PackageNamespace(""), "y_")
getlex QName(PackageNamespace(""), "y_")
subtract
getlocal 4
getproperty QName(PackageNamespace(""), "x_")
getlex QName(PackageNamespace(""), "x_")
subtract
callproperty QName(PackageNamespace(""), "atan2"), 2
setlocal 7
NEXTOBJ:
hasnext2 6, 5
iftrue L34
kill 6
kill 5
getlocal 12
pushbyte 0
ifeq END
SHOOT:
getlocal0
getlocal 7
callpropvoid QName(PrivateNamespace("*", "com.company.assembleegameclient.objects:Player#0"), "shoot"), 1
END:
returnvoid
end ; code
end ; body
end ; method
end ; trait
Then, insert this at the beginning of the _-0jh method, just under the "code" line :