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:_-t4#0" ; Found at the end of the onmousedown procedure : initproperty QName(PrivateNamespace("*", "com.company.assembleegameclient.game:_-0M4#0"), "_-0E")
#set mouseClicked "_-0Ot" ; Found at the end of the onmousedown procedure : initproperty QName(PrivateNamespace("*", "com.company.assembleegameclient.game:_-0M4#0"), "_-0E")
#set playerNamespace "_-0vv" ; Namespace of the Player class
#set characterNamespace "_-03H" ; Namespace of the Character class
#set gameobjectNamespace "_-0VA" ; Namespace of the GameObject class
#set basicobjectNamespace "_-DQ" ; Namespace of the BasicObject class
#set projectileNamespace "_-L-" ; Namespace of the Projectile class
#set Aimbot_charMaxHealth "_-UA" ; Found in com/company/assembleegameclient/objects/GameObject.class.asasm [trait slot QName(PackageNamespace(""), "_-Name") type QName(PackageNamespace(""), "int") value Integer(200) end]
#set ObjLibDictionary "_-sx" ; Found in ObjectLibraray class, this is the slot 4 : trait const QName(PackageNamespace(""), "_-") slotid 4 type QName(PackageNamespace("flash.utils"), "Dictionary") end
#set gameobjVector "_-w4" ; 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 "_-0bw" ; Found in ObjProperties class : trait slot QName(PackageNamespace(""), "") type QName(PackageNamespace("flash.utils"), "Dictionary") end
#set FunctionIsInvincible "_-rU"
#set FunctionsIsStasis "_-lv"
#set FunctionsIsInvulnerable "_-09V"
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
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
;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
jump NEXTOBJ
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
;-------------------------------------------
ShootFix: