Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package models
- {
- import com.playsaurus.model.Model;
- import it.sephiroth.gettext._;
- import com.playsaurus.utils.CurrentUser;
- import com.playsaurus.utils.ServerTimeKeeper;
- public class ActionBar extends Model
- {
- public static const DOUBLE_SKILL:int = 5;
- public static const NUM_ACTION_BUTTONS:Number = 9;
- public static const DARK_RITUAL:Number = 8;
- public static var skills:Object = {
- "1":{
- "name":"Clickstorm",
- "description":"Automatically performs 10 Clicks Per Second for %1 seconds.",
- "cooldown":600000,
- "iconId":7,
- "heroId":1,
- "timeEndId":"skillFreeClicksEnd"
- },
- "2":{
- "name":"Powersurge",
- "description":"+100% DPS for %1 seconds.",
- "cooldown":600000,
- "iconId":108,
- "heroId":3,
- "timeEndId":"skillDpsMultiplierEnd"
- },
- "3":{
- "name":"Lucky Strikes",
- "description":"+50% chance of Critical Click for %1 seconds.",
- "cooldown":1800000,
- "iconId":81,
- "heroId":10,
- "timeEndId":"skillCriticalClickChanceEnd"
- },
- "4":{
- "name":"Metal Detector",
- "description":"+100% Gold dropped for %1 seconds.",
- "cooldown":1800000,
- "iconId":67,
- "heroId":14,
- "timeEndId":"skillGoldBonusEnd"
- },
- "5":{
- "name":"Energize",
- "description":"Doubles the effect of the next skill you use.",
- "cooldown":3600000,
- "iconId":112,
- "heroId":23,
- "timeEndId":"skillDouble"
- },
- "6":{
- "name":"Golden Clicks",
- "description":"Clicks give %2% of monster gold, for %1 seconds. (0.1% on Bosses)",
- "cooldown":3600000,
- "iconId":123,
- "heroId":16,
- "timeEndId":"skillWildGoldEnd"
- },
- "7":{
- "name":"Super Clicks",
- "description":"+200% click damage for %1 seconds.",
- "cooldown":3600000,
- "iconId":124,
- "heroId":21,
- "timeEndId":"skillClickMultiplierEnd"
- },
- "8":{
- "name":"The Dark Ritual",
- "description":_("Multiply your current DPS by 1.05 for the duration of your world."),
- "descriptionMobile":"Gain 2 rubies.",
- "cooldown":28800000,
- "iconId":76,
- "heroId":18,
- "timeEndId":"nothing"
- },
- "9":{
- "name":"Reload",
- "description":"Reduce the cooldown of the last skill you used by 1 hour.",
- "cooldown":3600000,
- "iconId":51,
- "heroId":24,
- "timeEndId":"nothing"
- }
- };
- public function ActionBar()
- {
- super();
- }
- public function onSkillClick(param1:Number, param2:Boolean = true) : void
- {
- var _loc3_:UserData = CurrentUser.instance as UserData;
- _loc3_.useSkill(param1);
- switch(param1)
- {
- case 1:
- _loc3_.skillFreeClicks = 10 * (_loc3_.skillDouble?2:1);
- _loc3_.skillFreeClicksEnd = ServerTimeKeeper.instance.timestamp + _loc3_.getSkillDuration(1) * 1000;
- break;
- case 2:
- _loc3_.skillDpsMultiplier = 1 * (_loc3_.skillDouble?2:1);
- _loc3_.skillDpsMultiplierEnd = ServerTimeKeeper.instance.timestamp + _loc3_.getSkillDuration(2) * 1000;
- break;
- case 3:
- _loc3_.skillCriticalClickChance = 50 * (_loc3_.skillDouble?2:1);
- _loc3_.skillCriticalClickChanceEnd = ServerTimeKeeper.instance.timestamp + _loc3_.getSkillDuration(3) * 1000;
- break;
- case 4:
- _loc3_.skillGoldBonus = 1 * (_loc3_.skillDouble?2:1);
- _loc3_.skillGoldBonusEnd = ServerTimeKeeper.instance.timestamp + _loc3_.getSkillDuration(4) * 1000;
- break;
- case DOUBLE_SKILL:
- _loc3_.skillDouble = true;
- break;
- case 6:
- _loc3_.skillWildGold = 1 * (_loc3_.skillDouble?2:1);
- _loc3_.skillWildGoldEnd = ServerTimeKeeper.instance.timestamp + _loc3_.getSkillDuration(6) * 1000;
- break;
- case 7:
- _loc3_.skillClickMultiplier = 2 * (_loc3_.skillDouble?2:1);
- _loc3_.skillClickMultiplierEnd = ServerTimeKeeper.instance.timestamp + _loc3_.getSkillDuration(7) * 1000;
- break;
- case 8:
- _loc3_.allDpsMultiplier = _loc3_.allDpsMultiplier * (105 + (_loc3_.skillDouble?5:0)) / 100;
- _loc3_.attributes.recalculate();
- _loc3_.lifetimeDarkRitualClicks++;
- _loc3_.darkRitualClicks++;
- _loc3_.checkAchievements();
- break;
- case 9:
- _loc3_.skillCooldowns[_loc3_.lastSkillUsed] = _loc3_.skillCooldowns[_loc3_.lastSkillUsed] - 60 * 60 * 1000;
- if(_loc3_.skillDouble)
- {
- _loc3_.skillCooldowns[_loc3_.secondToLastSkillUsed] = _loc3_.skillCooldowns[_loc3_.secondToLastSkillUsed] - 60 * 60 * 1000;
- }
- break;
- default:
- throw new Error("Unknown skill \'" + param1 + "\'");
- }
- if(param1 != DOUBLE_SKILL)
- {
- _loc3_.skillDouble = false;
- if(param2)
- {
- _loc3_.secondToLastSkillUsed = _loc3_.lastSkillUsed;
- _loc3_.lastSkillUsed = param1;
- }
- }
- if(param2)
- {
- _loc3_.startSkillCooldown(param1,ServerTimeKeeper.instance.timestamp);
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement