no truth save the game, the more I was looking at the swf and enontrei the speed and the range attack, and even has damage, but I do not really know how to change codicos, give a look and test please.
these codes are in the folder. Command- COM- PROGRESTAR-Game- DATE - FIGHT-TYPE - ATTACK DATA
package com.progrestar.game.data.fight.types
{
import com.progrestar.common.lang.*;
import com.progrestar.common.util.*;
import com.progrestar.game.lib.*;
public class AttackData extends Object
{
private const LOCAL_PREFIX:String = "T_BATTLE_OBJECT_";
private var _attack:int;
private var _recharge:Number;
private var _attackDelay:Number;
private var _speed:Number;
private var _range:int;
private var _visibleRange:int;
private var _startHeight:Number;
private var _minAttackRange:int;
private var _bulletLibItem:BulletLibItem;
private var _type:String;
private var _targetTypes:Array;
private var _priorityTypes:Array;
public var armySlots:int;
private var _empty:Boolean;
private var _targetBoosts:Object;
private var _skills:Object;
private var _faction:String;
private static const fDamageFactors:String = "damageFactors";
public static const TYPE_GROUND_UNIT:String = "groundUnit";
public static const TYPE_AIR_UNIT:String = "airUnit";
public static const TYPE_BUILDING:String = "building";
public static const TYPE_STORAGE:String = "storage";
public static const TYPE_DEFENSE:String = "defense";
public static const TYPE_WALL:String = "wall";
public static const TYPE_NATURE:String = "nature";
public function AttackData(param1:Object)
{
//d0
_as3_getlocal <0>
//30
_as3_pushscope
//55 00
_as3_newobject {object count:0}
//5e 9c 86 01
_as3_findproperty com.progrestar.game.data.fight.types:AttackData::_targetBoosts
//2b
_as3_swap
//61 9c 86 01
_as3_setproperty com.progrestar.game.data.fight.types:AttackData::_targetBoosts
//55 00
_as3_newobject {object count:0}
//5e 9e 86 01
_as3_findproperty com.progrestar.game.data.fight.types:AttackData::_skills
//2b
_as3_swap
//61 9e 86 01
_as3_setproperty com.progrestar.game.data.fight.types:AttackData::_skills
//d0
_as3_getlocal <0>
//49 00
_as3_constructsuper (param count:0)
//26
_as3_pushtrue
//5e 9b 86 01
_as3_findproperty com.progrestar.game.data.fight.types:AttackData::_empty
//2b
_as3_swap
//61 9b 86 01
_as3_setproperty com.progrestar.game.data.fight.types:AttackData::_empty
//60 80 03
_as3_getlex com.progrestar.common.util::Assert
//d1
_as3_getlocal <1>
//2a
_as3_dup
//12 0a 00 00
_as3_iffalse offset: 10
//29
_as3_pop
//d1
_as3_getlocal <1>
//66 a2 86 01
_as3_getproperty type
//21
_as3_pushundefined
//ac
_as3_strictequals
//96
_as3_not
//82
_as3_coerce_a
//4f 81 03 01
_as3_callpropvoid isTrue(param count:1)
//2c b7 97 01
_as3_pushstring "groundUnit"
//d1
_as3_getlocal <1>
//66 a2 86 01
_as3_getproperty type
//14 1a 00 00
_as3_ifne offset: 26
//60 fb 02
_as3_getlex com.progrestar.common.util::TypeUtils
//d1
_as3_getlocal <1>
//2c 8c 1a
_as3_pushstring "speed"
//2c f6 7e
_as3_pushstring "range"
//2c dc 18
_as3_pushstring "air"
//2c e3 02
_as3_pushstring "type"
//2c 82 8d 01
_as3_pushstring "targetTypes"
//56 05
_as3_newarray [array size:5]
//4f c4 20 02
_as3_callpropvoid checkData(param count:2)
//d1
_as3_getlocal <1>
//66 a3 86 01
_as3_getproperty speed
//5e 8c 86 01
_as3_findproperty com.progrestar.game.data.fight.types:AttackData::_speed
//2b
_as3_swap
//61 8c 86 01
_as3_setproperty com.progrestar.game.data.fight.types:AttackData::_speed
//d1
_as3_getlocal <1>
//66 a4 86 01
_as3_getproperty range
//5e 8d 86 01
_as3_findproperty com.progrestar.game.data.fight.types:AttackData::_range
//2b
_as3_swap
//61 8d 86 01
_as3_setproperty com.progrestar.game.data.fight.types:AttackData::_range
//d1
_as3_getlocal <1>
//66 a5 86 01
_as3_getproperty visibleRange
//5e 8f 86 01
_as3_findproperty com.progrestar.game.data.fight.types:AttackData::_visibleRange
//2b
_as3_swap
//61 8f 86 01
_as3_setproperty com.progrestar.game.data.fight.types:AttackData::_visibleRange
//d1
_as3_getlocal <1>
//66 a6 86 01
_as3_getproperty minAttackRange
//5e 93 86 01
_as3_findproperty com.progrestar.game.data.fight.types:AttackData::_minAttackRange
//2b
_as3_swap
//61 93 86 01
_as3_setproperty com.progrestar.game.data.fight.types:AttackData::_minAttackRange
//60 85 16
_as3_getlex com.progrestar.game.lib::BulletLib
//66 03
_as3_getproperty instance
//d1
_as3_getlocal <1>
//66 a7 86 01
_as3_getproperty bulletId
//46 b7 19 01
_as3_callproperty getById(param count:1)
//5e 95 86 01
_as3_findproperty com.progrestar.game.data.fight.types:AttackData::_bulletLibItem
//2b
_as3_swap
//61 95 86 01
_as3_setproperty com.progrestar.game.data.fight.types:AttackData::_bulletLibItem
//d1
_as3_getlocal <1>
//66 a2 86 01
_as3_getproperty type
//5e 96 86 01
_as3_findproperty com.progrestar.game.data.fight.types:AttackData::_type
//2b
_as3_swap
//61 96 86 01
_as3_setproperty com.progrestar.game.data.fight.types:AttackData::_type
//d1
_as3_getlocal <1>
//66 a8 86 01
_as3_getproperty targetTypes
//5e 97 86 01
_as3_findproperty com.progrestar.game.data.fight.types:AttackData::_targetTypes
//2b
_as3_swap
//61 97 86 01
_as3_setproperty com.progrestar.game.data.fight.types:AttackData::_targetTypes
//d1
_as3_getlocal <1>
//66 a9 86 01
_as3_getproperty priorityTypes
//5e 99 86 01
_as3_findproperty com.progrestar.game.data.fight.types:AttackData::_priorityTypes
//2b
_as3_swap
//61 99 86 01
_as3_setproperty com.progrestar.game.data.fight.types:AttackData::_priorityTypes
//24 01
_as3_pushbyte 1
//5e d5 34
_as3_findproperty armySlots
//2b
_as3_swap
//61 d5 34
_as3_setproperty armySlots
//60 8d 86 01
_as3_getlex com.progrestar.game.data.fight.types:AttackData::_range
//24 00
_as3_pushbyte 0
//ab
_as3_equals
//5e 9b 86 01
_as3_findproperty com.progrestar.game.data.fight.types:AttackData::_empty
//2b
_as3_swap
//61 9b 86 01
_as3_setproperty com.progrestar.game.data.fight.types:AttackData::_empty
//d1
_as3_getlocal <1>
//66 aa 86 01
_as3_getproperty startHeight
//12 09 00 00
_as3_iffalse offset: 9
//d1
_as3_getlocal <1>
//66 aa 86 01
_as3_getproperty startHeight
//10 03 00 00
_as3_jump offset: 3
//24 00
_as3_pushbyte 0
//82
_as3_coerce_a
//5e 91 86 01
_as3_findproperty com.progrestar.game.data.fight.types:AttackData::_startHeight
//2b
_as3_swap
//61 91 86 01
_as3_setproperty com.progrestar.game.data.fight.types:AttackData::_startHeight
//d1
_as3_getlocal <1>
//66 ab 86 01
_as3_getproperty recharge
//12 09 00 00
_as3_iffalse offset: 9
//d1
_as3_getlocal <1>
//66 ab 86 01
_as3_getproperty recharge
//10 03 00 00
_as3_jump offset: 3
//24 01
_as3_pushbyte 1
//82
_as3_coerce_a
//5e 8a 86 01
_as3_findproperty com.progrestar.game.data.fight.types:AttackData::_recharge
//2b
_as3_swap
//61 8a 86 01
_as3_setproperty com.progrestar.game.data.fight.types:AttackData::_recharge
//d1
_as3_getlocal <1>
//2c de 65
_as3_pushstring "attackDelay"
//46 81 06 01
_as3_callproperty http://adobe.com/AS3/2006/builtin::hasOwnProperty(param count:1)
//12 09 00 00
_as3_iffalse offset: 9
//d1
_as3_getlocal <1>
//66 ac 86 01
_as3_getproperty attackDelay
//10 03 00 00
_as3_jump offset: 3
//2f 0b
_as3_pushdouble 0.5
//82
_as3_coerce_a
//5e 8b 86 01
_as3_findproperty com.progrestar.game.data.fight.types:AttackData::_attackDelay
//2b
_as3_swap
//61 8b 86 01
_as3_setproperty com.progrestar.game.data.fight.types:AttackData::_attackDelay
//d1
_as3_getlocal <1>
//2c b0 71
_as3_pushstring "faction"
//66 a1 86 01
_as3_getproperty {}
//5e a0 86 01
_as3_findproperty com.progrestar.game.data.fight.types:AttackData::_faction
//2b
_as3_swap
//61 a0 86 01
_as3_setproperty com.progrestar.game.data.fight.types:AttackData::_faction
//d1
_as3_getlocal <1>
//2c b5 97 01
_as3_pushstring "damageFactors"
//46 81 06 01
_as3_callproperty http://adobe.com/AS3/2006/builtin::hasOwnProperty(param count:1)
//12 12 00 00
_as3_iffalse offset: 18
//d1
_as3_getlocal <1>
//2c b5 97 01
_as3_pushstring "damageFactors"
//66 a1 86 01
_as3_getproperty {}
//5e 9c 86 01
_as3_findproperty com.progrestar.game.data.fight.types:AttackData::_targetBoosts
//2b
_as3_swap
//61 9c 86 01
_as3_setproperty com.progrestar.game.data.fight.types:AttackData::_targetBoosts
//d1
_as3_getlocal <1>
//2c d7 97 01
_as3_pushstring "skills"
//66 a1 86 01
_as3_getproperty {}
//60 05
_as3_getlex Array
//87
_as3_astypelate
//80 05
_as3_coerce Array
//d6
_as3_setlocal <2>
//d2
_as3_getlocal <2>
//20
_as3_pushnull
//ab
_as3_equals
//96
_as3_not
//2a
_as3_dup
//12 07 00 00
_as3_iffalse offset: 7
//29
_as3_pop
//d2
_as3_getlocal <2>
//66 7d
_as3_getproperty length
//24 00
_as3_pushbyte 0
//af
_as3_greaterthan
//12 24 00 00
_as3_iffalse offset: 36
//24 00
_as3_pushbyte 0
//63 05
_as3_setlocal <5>
//d2
_as3_getlocal <2>
//63 04
_as3_setlocal <4>
//10 12 00 00
_as3_jump offset: 18
//09
_as3_label
//62 04
_as3_getlocal <4>
//62 05
_as3_getlocal <5>
//23
_as3_nextvalue
//85
_as3_coerce_s
//d7
_as3_setlocal <3>
//60 9e 86 01
_as3_getlex com.progrestar.game.data.fight.types:AttackData::_skills
//d3
_as3_getlocal <3>
//26
_as3_pushtrue
//61 a1 86 01
_as3_setproperty {}
//32 04 05
_as3_hasnext2 4, 5
//11 e7 ff ff
_as3_iftrue offset: -25
//47
_as3_returnvoid
}// end function
public function get attack() : int
{
//d0
_as3_getlocal <0>
//30
_as3_pushscope
//60 89 86 01
_as3_getlex com.progrestar.game.data.fight.types:AttackData::_attack
//48
_as3_returnvalue
}// end function
public function get recharge() : Number
{
//d0
_as3_getlocal <0>
//30
_as3_pushscope
//60 8a 86 01
_as3_getlex com.progrestar.game.data.fight.types:AttackData::_recharge
//48
_as3_returnvalue
}// end function
public function get attackDelay() : Number
{
//d0
_as3_getlocal <0>
//30
_as3_pushscope
//60 8b 86 01
_as3_getlex com.progrestar.game.data.fight.types:AttackData::_attackDelay
//48
_as3_returnvalue
}// end function
public function get speed() : Number
{
//d0
_as3_getlocal <0>
//30
_as3_pushscope
//60 8c 86 01
_as3_getlex com.progrestar.game.data.fight.types:AttackData::_speed
//48
_as3_returnvalue
}// end function
public function get range() : int
{
//d0
_as3_getlocal <0>
//30
_as3_pushscope
//60 8d 86 01
_as3_getlex com.progrestar.game.data.fight.types:AttackData::_range
//48
_as3_returnvalue
}// end function
public function get canShoot() : Boolean
{
//d0
_as3_getlocal <0>
//30
_as3_pushscope
//60 8d 86 01
_as3_getlex com.progrestar.game.data.fight.types:AttackData::_range
//24 01
_as3_pushbyte 1
//af
_as3_greaterthan
//48
_as3_returnvalue
}// end function
public function get visibleRange() : int
{
//d0
_as3_getlocal <0>
//30
_as3_pushscope
//60 8f 86 01
_as3_getlex com.progrestar.game.data.fight.types:AttackData::_visibleRange
//48
_as3_returnvalue
}// end function
public function get startHeight() : Number
{
//d0
_as3_getlocal <0>
//30
_as3_pushscope
//60 91 86 01
_as3_getlex com.progrestar.game.data.fight.types:AttackData::_startHeight
//48
_as3_returnvalue
}// end function
public function get minAttackRange() : int
{
//d0
_as3_getlocal <0>
//30
_as3_pushscope
//60 93 86 01
_as3_getlex com.progrestar.game.data.fight.types:AttackData::_minAttackRange
//48
_as3_returnvalue
}// end function
public function get bulletLibItem() : BulletLibItem
{
//d0
_as3_getlocal <0>
//30
_as3_pushscope
//60 95 86 01
_as3_getlex com.progrestar.game.data.fight.types:AttackData::_bulletLibItem
//48
_as3_returnvalue
}// end function
public function get type() : String
{
//d0
_as3_getlocal <0>
//30
_as3_pushscope
//60 96 86 01
_as3_getlex com.progrestar.game.data.fight.types:AttackData::_type
//48
_as3_returnvalue
}// end function
public function get targetTypes() : Array
{
//d0
_as3_getlocal <0>
//30
_as3_pushscope
//60 97 86 01
_as3_getlex com.progrestar.game.data.fight.types:AttackData::_targetTypes
//48
_as3_returnvalue
}// end function
public function get priorityTypes() : Array
{
//d0
_as3_getlocal <0>
//30
_as3_pushscope
//60 99 86 01
_as3_getlex com.progrestar.game.data.fight.types:AttackData::_priorityTypes
//48
_as3_returnvalue
}// end function
public function get empty() : Boolean
{
//d0
_as3_getlocal <0>
//30
_as3_pushscope
//60 9b 86 01
_as3_getlex com.progrestar.game.data.fight.types:AttackData::_empty
//48
_as3_returnvalue
}// end function
public function get targetBoosts() : Object
{
//d0
_as3_getlocal <0>
//30
_as3_pushscope
//60 9c 86 01
_as3_getlex com.progrestar.game.data.fight.types:AttackData::_targetBoosts
//48
_as3_returnvalue
}// end function
public function haveSkill(param1:String) : Boolean
{
//d0
_as3_getlocal <0>
//30
_as3_pushscope
//60 9e 86 01
_as3_getlex com.progrestar.game.data.fight.types:AttackData::_skills
//d1
_as3_getlocal <1>
//66 a1 86 01
_as3_getproperty {}
//76
_as3_convert_b
//48
_as3_returnvalue
}// end function
public function get skillList() : Object
{
//d0
_as3_getlocal <0>
//30
_as3_pushscope
//60 9e 86 01
_as3_getlex com.progrestar.game.data.fight.types:AttackData::_skills
//48
_as3_returnvalue
}// end function
public function get faction() : String
{
//d0
_as3_getlocal <0>
//30
_as3_pushscope
//60 a0 86 01
_as3_getlex com.progrestar.game.data.fight.types:AttackData::_faction
//48
_as3_returnvalue
}// end function
public function get favorGoalLocal() : String
{
//d0
_as3_getlocal <0>
//30
_as3_pushscope
//20
_as3_pushnull
//d5
_as3_setlocal <1>
//60 99 86 01
_as3_getlex com.progrestar.game.data.fight.types:AttackData::_priorityTypes
//2a
_as3_dup
//12 0b 00 00
_as3_iffalse offset: 11
//29
_as3_pop
//60 99 86 01
_as3_getlex com.progrestar.game.data.fight.types:AttackData::_priorityTypes
//66 7d
_as3_getproperty length
//24 00
_as3_pushbyte 0
//af
_as3_greaterthan
//82
_as3_coerce_a
//12 26 00 00
_as3_iffalse offset: 38
//60 99 86 01
_as3_getlex com.progrestar.game.data.fight.types:AttackData::_priorityTypes
//24 00
_as3_pushbyte 0
//66 a1 86 01
_as3_getproperty {}
//85
_as3_coerce_s
//d5
_as3_setlocal <1>
//2c bf 97 01
_as3_pushstring "T_BATTLE_OBJECT_"
//d1
_as3_getlocal <1>
//46 c4 05 00
_as3_callproperty http://adobe.com/AS3/2006/builtin::toUpperCase(param count:0)
//a0
_as3_add
//85
_as3_coerce_s
//d5
_as3_setlocal <1>
//60 dd 01
_as3_getlex com.progrestar.common.lang::Translate
//d1
_as3_getlocal <1>
//46 de 01 01
_as3_callproperty translate(param count:1)
//85
_as3_coerce_s
//d5
_as3_setlocal <1>
//10 0d 00 00
_as3_jump offset: 13
//60 dd 01
_as3_getlex com.progrestar.common.lang::Translate
//2c d4 97 01
_as3_pushstring "T_BATTLE_TARGET_ANY"
//46 de 01 01
_as3_callproperty translate(param count:1)
//85
_as3_coerce_s
//d5
_as3_setlocal <1>
//d1
_as3_getlocal <1>
//48
_as3_returnvalue
}// end function
public function getTypeLocal() : String
{
//d0
_as3_getlocal <0>
//30
_as3_pushscope
//2c bf 97 01
_as3_pushstring "T_BATTLE_OBJECT_"
//60 96 86 01
_as3_getlex com.progrestar.game.data.fight.types:AttackData::_type
//46 c4 05 00
_as3_callproperty http://adobe.com/AS3/2006/builtin::toUpperCase(param count:0)
//a0
_as3_add
//85
_as3_coerce_s
//d5
_as3_setlocal <1>
//60 dd 01
_as3_getlex com.progrestar.common.lang::Translate
//d1
_as3_getlocal <1>
//46 de 01 01
_as3_callproperty translate(param count:1)
//85
_as3_coerce_s
//d5
_as3_setlocal <1>
//d1
_as3_getlocal <1>
//48
_as3_returnvalue
}// end function
public function getAttackTypeLocal() : String
{
//d0
_as3_getlocal <0>
//30
_as3_pushscope
//60 dd 01
_as3_getlex com.progrestar.common.lang::Translate
//2c d5 97 01
_as3_pushstring "T_ATTACK_TYPE_SINGLE"
//46 de 01 01
_as3_callproperty translate(param count:1)
//85
_as3_coerce_s
//d5
_as3_setlocal <1>
//60 95 86 01
_as3_getlex com.progrestar.game.data.fight.types:AttackData::_bulletLibItem
//12 26 00 00
_as3_iffalse offset: 38
//60 95 86 01
_as3_getlex com.progrestar.game.data.fight.types:AttackData::_bulletLibItem
//66 d1 47
_as3_getproperty splashInterval
//2a
_as3_dup
//12 09 00 00
_as3_iffalse offset: 9
//29
_as3_pop
//60 95 86 01
_as3_getlex com.progrestar.game.data.fight.types:AttackData::_bulletLibItem
//66 d2 47
_as3_getproperty splashRange
//75
_as3_convert_d
//12 0d 00 00
_as3_iffalse offset: 13
//60 dd 01
_as3_getlex com.progrestar.common.lang::Translate
//2c d6 97 01
_as3_pushstring "T_ATTACK_TYPE_SPLASH"
//46 de 01 01
_as3_callproperty translate(param count:1)
//85
_as3_coerce_s
//d5
_as3_setlocal <1>
//d1
_as3_getlocal <1>
//48
_as3_returnvalue
}// end function
}
}