Welcome!

Join our community of MMO enthusiasts and game developers! By registering, you'll gain access to discussions on the latest developments in MMO server files and collaborate with like-minded individuals. Join us today and unlock the potential of MMO server development!

Join Today!

[Release] IGCN Season 9.5 (src-x9.5 9.5.1.15) SRC (April/2016)

Experienced Elementalist
Joined
May 4, 2017
Messages
219
Reaction score
318
@solarismu:
Can you help us how to add effects to weapons? In Season 6 Custom they add an EffectItem.txt file to add effects to each weapon, while in Season 9, you add the Effect in the DLL or you have added a txt file to read the effect of each weapon! Thank you !
Are you talking about this?
hrfPWLB - [Release] IGCN Season 9.5  (src-x9.5 9.5.1.15) SRC (April/2016) - RaGEZONE Forums
Jj2vsOA - [Release] IGCN Season 9.5  (src-x9.5 9.5.1.15) SRC (April/2016) - RaGEZONE Forums
Q2CDhkh - [Release] IGCN Season 9.5  (src-x9.5 9.5.1.15) SRC (April/2016) - RaGEZONE Forums

I'm not ready or think about releasing this yet... Still in developing mode, and don't know when it can be finished (not having time :( )
It's only Static effect part coded, still need to add dynamic custom effect :(



Yes man :D
if you use pande you have bonus exp + 50% its okej final result exp is 150%
if i use panda (in my server) have bonus exp + 50% from panda and + 1,10 exp and final result exp is 165% and i want 150% only for pandaaa dont want exp multiple bonus...
Yes i know on screen is seal of healing but It does not matter.
kk, I'll try later.



@solarismu


I added a custom in the SRC IGCN Season 9 that when an item that is defined by the admin is dropped on the ground it creates a SPOT of a monster defined also by the admin, with a quantity of monsters and a duration time.

this sport can be defined as private or not, only those who dropped the item can attack, if it is private it is also possible to define if the party or guild will be able to attack

I was able to add my Custom but the monsters that are generated can not be attacked but they damage the player


I was wondering if you could help me with this ?? send me a PM with your Skype if you can help me

Seem like it's failed to check player index && monster owner index(who summoned it). Why don't you use debugger to check it?
 

Attachments

You must be registered for see attachments list
Experienced Elementalist
Joined
Aug 21, 2006
Messages
221
Reaction score
2
1) That's not bug. Check your Gate config.
IGC_GateSettings.xml -> Check gate index 50 (probaly :D, anyway check all gates to map 6 :D)


Maybe just your config errors, I don't see that problem on my side.
WTH are you talking about? I don't see anything wrong here
1) OMG gate is for teleport cordinats... all tps is fine client and server side fine... i cant change stadium skin on bigger move zone... client have VISUAL BUG black screen like delgado npc
2) I dont have errors in config and where is that configs IGC_ExpSystem.xml?
Code:
ExpSystem CalcType="0" DebugMode="0">    <StaticExp Normal="100.0" Master="100.0" Event="0.0" Quest="1.0" />
in IGC_MapAttribute.xml all maps
Code:
ExpBonus="0.0"
in scripts ExpCalc.lua
Code:
function SetExpTable_Normal(Level)    local Exp = 10 * Level * Level * (Level + 9);    if ( Level > 255 ) then        Exp = Exp + ( 1000 * (Level-255) * (Level-255) * ((Level-255) + 9))    end        return Expendfunction SetExpTable_Master(MasterLevel, MaxNormalLevel)    local TotalLevel = MasterLevel + MaxNormalLevel    local Exp = (TotalLevel + 9) * TotalLevel * TotalLevel * 10        Exp = Exp + ( ((TotalLevel - 255) + 9) * (TotalLevel - 255) * (TotalLevel - 255) * 1000)    Exp = (Exp - 3892250000) / 2        if(MasterLevel > 200) then        Exp = Exp * ( (TotalLevel - 600) * (TotalLevel - 600) * 1.2 / 100000.0 + 1.0 )    end        return Expend
where is more exp configs?
3) if u equip excellent item u dont see that glow effect like excellent item same with ancient items
 
Experienced Elementalist
Joined
May 4, 2017
Messages
219
Reaction score
318
Yes man :D
if you use pande you have bonus exp + 50% its okej final result exp is 150%
if i use panda (in my server) have bonus exp + 50% from panda and + 1,10 exp and final result exp is 165% and i want 150% only for pandaaa dont want exp multiple bonus...
Yes i know on screen is seal of healing but It does not matter.
View attachment 162823

Just come back, and see your thread clearly again.
and ... LOL
You don't understand what you are saying...
It's premium Exp reward, increase 10% every +50% exp buff.
-.- In code, check function
Code:
//int iPremiumExp = GetPremiumExp(nAddExp);
int GetPremiumExp(int nAddExp)
{
    int nPremiumExp = 100;
    nAddExp -= 100;


    if (nAddExp < 1 || nAddExp > 50)
    {
        if (nAddExp < 51 || nAddExp > 100)
        {
            if (nAddExp < 101 || nAddExp > 150)
            {
                if (nAddExp < 151 || nAddExp > 200)
                {
                    if (nAddExp < 201 || nAddExp > 250)
                    {
                        if (nAddExp < 251 || nAddExp > 300)
                        {
                            if (nAddExp < 301 || nAddExp > 350)
                            {
                                if (nAddExp < 351 || nAddExp > 400)
                                {
                                    if (nAddExp < 401 || nAddExp > 450)
                                    {
                                        if (nAddExp < 451 || nAddExp > 500)
                                        {
                                            if (nAddExp < 501 || nAddExp > 550)
                                            {
                                                if (nAddExp < 551 || nAddExp > 600)
                                                {
                                                    if (nAddExp < 601 || nAddExp > 650)
                                                    {
                                                        if (nAddExp < 651 || nAddExp > 700)
                                                        {
                                                            if (nAddExp >= 701)
                                                                nPremiumExp = 250;
                                                        }
                                                        else
                                                        {
                                                            nPremiumExp = 240;
                                                        }
                                                    }
                                                    else
                                                    {
                                                        nPremiumExp = 230;
                                                    }
                                                }
                                                else
                                                {
                                                    nPremiumExp = 220;
                                                }
                                            }
                                            else
                                            {
                                                nPremiumExp = 210;
                                            }
                                        }
                                        else
                                        {
                                            nPremiumExp = 200;
                                        }
                                    }
                                    else
                                    {
                                        nPremiumExp = 190;
                                    }
                                }
                                else
                                {
                                    nPremiumExp = 180;
                                }
                            }
                            else
                            {
                                nPremiumExp = 170;
                            }
                        }
                        else
                        {
                            nPremiumExp = 160;
                        }
                    }
                    else
                    {
                        nPremiumExp = 150;
                    }
                }
                else
                {
                    nPremiumExp = 140;
                }
            }
            else
            {
                nPremiumExp = 130;
            }
        }
        else
        {
            nPremiumExp = 120;
        }
    }
    else
    {
        nPremiumExp = 110;
    }


    return nPremiumExp;
}
Btw, you should rewrite that function. IMO, uncomfortable coding style in that function code. :) Maybe, IGCN or someone wrote this just "borrowed" directly from reverse tools
Again, that's not a bug. It's webzen fault, if you think that's a bug. blame them ^^

------------------------------------------------
1) OMG gate is for teleport cordinats... all tps is fine client and server side fine... i cant change stadium skin on bigger move zone... client have VISUAL BUG black screen like delgado npc
2) I dont have errors in config and where is that configs IGC_ExpSystem.xml? where is more exp configs?
3) if u equip excellent item u dont see that glow effect like excellent item same with ancient items

1. as I understand, when you click move to arena, it warps you to a black zone right? if it's this case, just change gate coords to another place.
2. see above.
3. I see it normally.

--------------------------------------
This is normal?
Vitxi6r - [Release] IGCN Season 9.5  (src-x9.5 9.5.1.15) SRC (April/2016) - RaGEZONE Forums
Yes, it's normal. Cause Webzen didn't make that event
 

Attachments

You must be registered for see attachments list
Last edited:
Experienced Elementalist
Joined
Aug 21, 2006
Messages
221
Reaction score
2
1. as I understand, when you click move to arena, it warps you to a black zone right? if it's this case, just change gate coords to another place.
Thanks for answers. No i warp in norm place and i can move. But if i go down to another spots. Client show black screen if u go far away
 
Newbie Spellweaver
Joined
Jun 18, 2014
Messages
68
Reaction score
2
Just come back, and see your thread clearly again.
and ... LOL
You don't understand what you are saying...
It's premium Exp reward, increase 10% every +50% exp buff.
-.- In code, check function
Code:
//int iPremiumExp = GetPremiumExp(nAddExp);
int GetPremiumExp(int nAddExp)
{
    int nPremiumExp = 100;
    nAddExp -= 100;


    if (nAddExp < 1 || nAddExp > 50)
    {
        if (nAddExp < 51 || nAddExp > 100)
        {
            if (nAddExp < 101 || nAddExp > 150)
            {
                if (nAddExp < 151 || nAddExp > 200)
                {
                    if (nAddExp < 201 || nAddExp > 250)
                    {
                        if (nAddExp < 251 || nAddExp > 300)
                        {
                            if (nAddExp < 301 || nAddExp > 350)
                            {
                                if (nAddExp < 351 || nAddExp > 400)
                                {
                                    if (nAddExp < 401 || nAddExp > 450)
                                    {
                                        if (nAddExp < 451 || nAddExp > 500)
                                        {
                                            if (nAddExp < 501 || nAddExp > 550)
                                            {
                                                if (nAddExp < 551 || nAddExp > 600)
                                                {
                                                    if (nAddExp < 601 || nAddExp > 650)
                                                    {
                                                        if (nAddExp < 651 || nAddExp > 700)
                                                        {
                                                            if (nAddExp >= 701)
                                                                nPremiumExp = 250;
                                                        }
                                                        else
                                                        {
                                                            nPremiumExp = 240;
                                                        }
                                                    }
                                                    else
                                                    {
                                                        nPremiumExp = 230;
                                                    }
                                                }
                                                else
                                                {
                                                    nPremiumExp = 220;
                                                }
                                            }
                                            else
                                            {
                                                nPremiumExp = 210;
                                            }
                                        }
                                        else
                                        {
                                            nPremiumExp = 200;
                                        }
                                    }
                                    else
                                    {
                                        nPremiumExp = 190;
                                    }
                                }
                                else
                                {
                                    nPremiumExp = 180;
                                }
                            }
                            else
                            {
                                nPremiumExp = 170;
                            }
                        }
                        else
                        {
                            nPremiumExp = 160;
                        }
                    }
                    else
                    {
                        nPremiumExp = 150;
                    }
                }
                else
                {
                    nPremiumExp = 140;
                }
            }
            else
            {
                nPremiumExp = 130;
            }
        }
        else
        {
            nPremiumExp = 120;
        }
    }
    else
    {
        nPremiumExp = 110;
    }


    return nPremiumExp;
}
Btw, you should rewrite that function. IMO, uncomfortable coding style in that function code. :) Maybe, IGCN or someone wrote this just "borrowed" directly from reverse tools
Again, that's not a bug. It's webzen fault, if you think that's a bug. blame them ^^

------------------------------------------------


1. as I understand, when you click move to arena, it warps you to a black zone right? if it's this case, just change gate coords to another place.
2. see above.
3. I see it normally.

--------------------------------------

Yes, it's normal. Cause Webzen didn't make that event

I can edit premiumexp only in Source?
 
Experienced Elementalist
Joined
Aug 21, 2006
Messages
221
Reaction score
2
Yes, you can edit premium exp in server source.
But in client, it's NOT change (visual) if you don't do any further modification
Lol all anothers release 9-12 seasons is fine with exp but here not? :D webzen there is nothing to do with :D
 
Experienced Elementalist
Joined
May 4, 2017
Messages
219
Reaction score
318
Lol all anothers release 9-12 seasons is fine with exp but here not? :D webzen there is nothing to do with :D
what're you talking about? Exp is fine... in this client s9, Premiumexp is added every extra 50% (not exactly like this but kind of with old webzen gmo Mu) exp bonus... Anyway, pls... Read this:
50% EXP rate increase for Seal of Ascension (Premium EXP Bonus: 10%)
50% EXP rate increase for Master Seal of Ascension (Premium EXP Bonus: 10%)
100% EXP rate increase for Seal of Wealth (Premium EXP Bonus: 20%)
100% EXP rate increase for Master Seal of Wealth (Premium EXP Bonus: 20%)
50% EXP rate increase for Seal of Healing (Premium EXP Bonus: 10%)
50% EXP rate increase for Panda Pet (Premium EXP Bonus: 10%)
50% EXP rate increase for Skeleton Pet (Premium EXP Bonus: 10%)
...
That's why panda give 60% instead of 50%. Am I clear enough? ps: you are so weird, anyway... i don't know anymore. dont ask me :(
 
Last edited:
Experienced Elementalist
Joined
May 4, 2017
Messages
219
Reaction score
318
@or30n
Hi my friend,

I really appreciate your help with the facebook tab but there was a bug. When i open the obtain tab i couldn't add extra items to pick.
Can you help me with this procedure, how to reverse main and decrypt/encrypt ozd files.
I'm thinking to remake this "Other" tab something like "Note" for example and remove "Connect" button and make it something like note tab for things to remember or something like that.

My regards

Oh, I knew I made a mistake with that OZG file :)
Just forget it man, I check it script, and found another way to hide it without edit interface.

Code:
// In MacroMain.gfx ActionScript...
function [COLOR=#ff0000]SetFaceBookVisible(bVisible)
[/COLOR]   {
      this.mcFaceBookMark._visible = bVisible;
      this.taFacebookInfo._visible = bVisible;
      this.btnConnect._visible = bVisible;
   }

//And below is its full script
class MacroMain extends Common.Base.MUComponent{   var m_iBtnDelay = 2000;   var m_iTapType = 0;   var m_iCharType = 0;   var m_iItemListMax = 12;   var m_iHuntAreaMax = 8;   var m_iHuntAreaValue = 0;   var m_iGetAreaMax = 8;   var m_iGetAreaValue = 0;   var m_bLimits = false;   var m_iTempHuntAreaMax = 0;   function MacroMain()   {      super();   }   function onLoadUI()   {      var _loc5_ = 0;      var _loc4_ = 0;      this.mcMacroMain = this.m_mcMovie.mcMacroMain;      this.tfTitle = this.mcMacroMain.tfTitle;      this.btnDrag = this.mcMacroMain.btnDrag;      this.btnClose = this.mcMacroMain.btnClose;      this.btnTapHunt = this.mcMacroMain.btnTapHunt;      this.btnTapGet = this.mcMacroMain.btnTapGet;      this.btnTapEtc = this.mcMacroMain.btnTapEtc;      this.btnInit = this.mcMacroMain.btnInit;      this.btnSave = this.mcMacroMain.btnSave;      this.mcSkillSlot = this.m_mcMovie.mcSkillSlot;      this.aSkillSlot = new Array(Common.Global.MUDefines.MACRO_MAIN_SELECT_SKILL_SLOT);      var _loc3_ = 0;      while(_loc3_ < Common.Global.MUDefines.MACRO_MAIN_SELECT_SKILL_SLOT)      {         this.aSkillSlot[_loc3_] = this.mcSkillSlot["mcSkill_" + String(_loc3_)].isSlot;         this.aSkillSlot[_loc3_].SetTypeIndex(Common.Global.MUDefines.MACRO_MAIN_SLOT_TYPE_SELECT,_loc3_);         _loc5_ = this.mcSkillSlot._x + this.mcSkillSlot["mcSkill_" + String(_loc3_)]._x + this.aSkillSlot[_loc3_]._x;         _loc4_ = this.mcSkillSlot._y + this.mcSkillSlot["mcSkill_" + String(_loc3_)]._y + this.aSkillSlot[_loc3_]._y;         flash.external.ExternalInterface.call("isSlot",Common.Global.MUDefines.MACRO_MAIN_SLOT_TYPE_SELECT,_loc3_,_loc5_,_loc4_,this.aSkillSlot[_loc3_]._width,this.aSkillSlot[_loc3_]._height);         this.mcSkillSlot["mcSkill_" + String(_loc3_)]._visible = false;         _loc3_ = _loc3_ + 1;      }      this.mcSkillSlot._visible = false;      this.mcTapHunt = this.mcMacroMain.mcTapHunt;      this.tfHuntArea = this.mcTapHunt.tfHuntArea;      this.abtnHuntArea = new Array(Common.Global.MUDefines.MACRO_MAIN_AREA_BTN_COUNT_MAX);      _loc3_ = 0;      while(_loc3_ < Common.Global.MUDefines.MACRO_MAIN_AREA_BTN_COUNT_MAX)      {         this.abtnHuntArea[_loc3_] = this.mcTapHunt.mcHuntArea["btnArea" + String(_loc3_ + 1)];         _loc3_ = _loc3_ + 1;      }      this.amcHuntArea = new Array(Common.Global.MUDefines.MACRO_MAIN_AREA_BTN_COUNT_MAX);      _loc3_ = 0;      while(_loc3_ < Common.Global.MUDefines.MACRO_MAIN_AREA_BTN_COUNT_MAX)      {         this.amcHuntArea[_loc3_] = this.mcTapHunt.mcHuntArea["mcArea" + String(_loc3_ + 1)];         _loc3_ = _loc3_ + 1;      }      this.cbNormalAttack = this.mcTapHunt.cbNormalAttack;      this.cbCloseRangeSkill = this.mcTapHunt.cbCloseRangeSkill;      this.cbLongRangeCounter = this.mcTapHunt.cbLongRangeCounter;      this.cbReturnPoint = this.mcTapHunt.cbReturnPoint;      this.tiReturn_delayInput = this.mcTapHunt.tiReturn_delayInput;      this.tiReturn_delayInput.__set__restrict("0-9");      this.tfReturn_timeUnit = this.mcTapHunt.tfReturn_timeUnit;      this.cbAutoPotion = this.mcTapHunt.cbAutoPotion;      this.btnAutoPotionMenu = this.mcTapHunt.btnAutoPotionMenu;      this.tfBasicSkill = this.mcTapHunt.tfBasicSkill;      this.isSlotBasicSkill = this.mcTapHunt.mcBasicSkill.isSlot;      this.isSlotBasicSkill.SetTypeIndex(Common.Global.MUDefines.MACRO_MAIN_SLOT_TYPE_SKILL,0);      _loc5_ = this.mcMacroMain._x + this.mcTapHunt._x + this.mcTapHunt.mcBasicSkill._x + this.isSlotBasicSkill._x;      _loc4_ = this.mcMacroMain._y + this.mcTapHunt._y + this.mcTapHunt.mcBasicSkill._y + this.isSlotBasicSkill._y;      flash.external.ExternalInterface.call("isSlot",Common.Global.MUDefines.MACRO_MAIN_SLOT_TYPE_SKILL,0,_loc5_,_loc4_,this.isSlotBasicSkill._width,this.isSlotBasicSkill._height);      this.tfSkill1 = this.mcTapHunt.tfSkill1;      this.isSlotSkill1 = this.mcTapHunt.mcSkill1.isSlot;      this.isSlotSkill1.SetTypeIndex(Common.Global.MUDefines.MACRO_MAIN_SLOT_TYPE_SKILL,1);      _loc5_ = this.mcMacroMain._x + this.mcTapHunt._x + this.mcTapHunt.mcSkill1._x + this.isSlotSkill1._x;      _loc4_ = this.mcMacroMain._y + this.mcTapHunt._y + this.mcTapHunt.mcSkill1._y + this.isSlotSkill1._y;      flash.external.ExternalInterface.call("isSlot",Common.Global.MUDefines.MACRO_MAIN_SLOT_TYPE_SKILL,1,_loc5_,_loc4_,this.isSlotSkill1._width,this.isSlotSkill1._height);      this.cbSkill1_delay = this.mcTapHunt.cbSkill1_delay;      this.tiSkill1_delayInput = this.mcTapHunt.tiSkill1_delayInput;      this.tiSkill1_delayInput.__set__restrict("0-9");      this.tfSkill1_timeUnit = this.mcTapHunt.tfSkill1_timeUnit;      this.cbSkill1_condition = this.mcTapHunt.cbSkill1_condition;      this.btnSkill1_conditionMenu = this.mcTapHunt.btnSkill1_conditionMenu;      this.cbBuff = this.mcTapHunt.cbBuff;      this.isSlotBuff1 = this.mcTapHunt.mcBuff1.isSlot;      this.isSlotBuff1.SetTypeIndex(Common.Global.MUDefines.MACRO_MAIN_SLOT_TYPE_BUFF,0);      _loc5_ = this.mcMacroMain._x + this.mcTapHunt._x + this.mcTapHunt.mcBuff1._x + this.isSlotBuff1._x;      _loc4_ = this.mcMacroMain._y + this.mcTapHunt._y + this.mcTapHunt.mcBuff1._y + this.isSlotBuff1._y;      flash.external.ExternalInterface.call("isSlot",Common.Global.MUDefines.MACRO_MAIN_SLOT_TYPE_BUFF,0,_loc5_,_loc4_,this.isSlotBuff1._width,this.isSlotBuff1._height);      this.isSlotBuff2 = this.mcTapHunt.mcBuff2.isSlot;      this.isSlotBuff2.SetTypeIndex(Common.Global.MUDefines.MACRO_MAIN_SLOT_TYPE_BUFF,1);      _loc5_ = this.mcMacroMain._x + this.mcTapHunt._x + this.mcTapHunt.mcBuff2._x + this.isSlotBuff2._x;      _loc4_ = this.mcMacroMain._y + this.mcTapHunt._y + this.mcTapHunt.mcBuff2._y + this.isSlotBuff2._y;      flash.external.ExternalInterface.call("isSlot",Common.Global.MUDefines.MACRO_MAIN_SLOT_TYPE_BUFF,1,_loc5_,_loc4_,this.isSlotBuff2._width,this.isSlotBuff2._height);      this.isSlotBuff3 = this.mcTapHunt.mcBuff3.isSlot;      this.isSlotBuff3.SetTypeIndex(Common.Global.MUDefines.MACRO_MAIN_SLOT_TYPE_BUFF,2);      _loc5_ = this.mcMacroMain._x + this.mcTapHunt._x + this.mcTapHunt.mcBuff3._x + this.isSlotBuff3._x;      _loc4_ = this.mcMacroMain._y + this.mcTapHunt._y + this.mcTapHunt.mcBuff3._y + this.isSlotBuff3._y;      flash.external.ExternalInterface.call("isSlot",Common.Global.MUDefines.MACRO_MAIN_SLOT_TYPE_BUFF,2,_loc5_,_loc4_,this.isSlotBuff3._width,this.isSlotBuff3._height);      this.cbSupportParty = this.mcTapHunt.cbSupportParty;      this.btnSupportPartyMenu = this.mcTapHunt.btnSupportPartyMenu;      this.cbAutoHeal = this.mcTapHunt.cbAutoHeal;      this.cbDrainLife = this.mcTapHunt.cbDrainLife;      this.mcSubSkill = this.mcTapHunt.mcSubSkill;      this.cbCombo = this.mcSubSkill.cbCombo;      this.tfSkill2 = this.mcSubSkill.tfSkill2;      this.isSlotkill2 = this.mcSubSkill.mcSkill2.isSlot;      this.isSlotkill2.SetTypeIndex(Common.Global.MUDefines.MACRO_MAIN_SLOT_TYPE_SKILL,2);      _loc5_ = this.mcMacroMain._x + this.mcTapHunt._x + this.mcSubSkill._x + this.mcSubSkill.mcSkill2._x + this.isSlotkill2._x;      _loc4_ = this.mcMacroMain._y + this.mcTapHunt._y + this.mcSubSkill._y + this.mcSubSkill.mcSkill2._y + this.isSlotkill2._y;      flash.external.ExternalInterface.call("isSlot",Common.Global.MUDefines.MACRO_MAIN_SLOT_TYPE_SKILL,2,_loc5_,_loc4_,this.isSlotkill2._width,this.isSlotkill2._height);      this.cbSkill2_delay = this.mcSubSkill.cbSkill2_delay;      this.tiSkill2_delayInput = this.mcSubSkill.tiSkill2_delayInput;      this.tiSkill2_delayInput.__set__restrict("0-9");      this.tfSkill2_timeUnit = this.mcSubSkill.tfSkill2_timeUnit;      this.cbSkill2_condition = this.mcSubSkill.cbSkill2_condition;      this.btnSkill2_conditionMenu = this.mcSubSkill.btnSkill2_conditionMenu;      this.mcDarkSpirit = this.mcTapHunt.mcDarkSpirit;      this.cbUseDarkSpirit = this.mcDarkSpirit.cbUseDarkSpirit;      this.rbAutoAttack = this.mcDarkSpirit.rbAutoAttack;      this.rbNoneAttack = this.mcDarkSpirit.rbNoneAttack;      this.rbWithAttack = this.mcDarkSpirit.rbWithAttack;      this.mcTapItem = this.mcMacroMain.mcTapItem;      this.tfGetArea = this.mcTapItem.tfGetArea;      this.abtnGetArea = new Array(Common.Global.MUDefines.MACRO_MAIN_AREA_BTN_COUNT_MAX);      _loc3_ = 0;      while(_loc3_ < Common.Global.MUDefines.MACRO_MAIN_AREA_BTN_COUNT_MAX)      {         this.abtnGetArea[_loc3_] = this.mcTapItem.mcGetArea["btnArea" + String(_loc3_ + 1)];         _loc3_ = _loc3_ + 1;      }      this.amcGetArea = new Array(Common.Global.MUDefines.MACRO_MAIN_AREA_BTN_COUNT_MAX);      _loc3_ = 0;      while(_loc3_ < Common.Global.MUDefines.MACRO_MAIN_AREA_BTN_COUNT_MAX)      {         this.amcGetArea[_loc3_] = this.mcTapItem.mcGetArea["mcArea" + String(_loc3_ + 1)];         _loc3_ = _loc3_ + 1;      }      this.cbItemRepair = this.mcTapItem.cbItemRepair;      this.cbGetAllItem = this.mcTapItem.cbGetAllItem;      this.cbSelectiveGetItem = this.mcTapItem.cbSelectiveGetItem;      this.cbJewelItem = this.mcTapItem.cbJewelItem;      this.cbSetItem = this.mcTapItem.cbSetItem;      this.cbZen = this.mcTapItem.cbZen;      this.cbExcellentItem = this.mcTapItem.cbExcellentItem;      this.cbEtcGetItem = this.mcTapItem.cbEtcGetItem;      this.tiItemName = this.mcTapItem.tiItemName;      this.btnRegItem = this.mcTapItem.btnRegItem;      this.btnUnRegItem = this.mcTapItem.btnUnRegItem;      this.tfRegItemList = this.mcTapItem.tfRegItemList;      this.slRegList = this.mcTapItem.mcRegList.slRegList;      this.mcTapEtc = this.mcMacroMain.mcTapEtc;      this.cbAcceptParty_friend = this.mcTapEtc.cbAcceptParty_friend;      this.cbAcceptParty_guild = this.mcTapEtc.cbAcceptParty_guild;      this.cbUseEliteManaPotion = this.mcTapEtc.cbUseEliteManaPotion;      this.mcFaceBookMark = this.mcTapEtc.mcFaceBookMark;      this.taFacebookInfo = this.mcTapEtc.taFacebookInfo;      this.btnConnect = this.mcTapEtc.btnConnect;      this.mcAreaLimitsCaution = this.mcMacroMain.mcAreaLimitsCaution;      this.mcAreaLimitsCaution._visible = false;      this.mcTabLimitsCaution = this.mcMacroMain.mcTabLimitsCaution;      this.mcTabLimitsCaution._visible = false;      super.onLoadUI();      this.SetBtnDrag(this.btnDrag);      this.SetBtnClose(this.btnClose);      this.ShowTap(0,0);      this.SetFaceBookVisible(false);   }   function onUnloadUI()   {      super.onUnloadUI();   }   function onAddEvent()   {      this.btnTapHunt.addEventListener("click",this,"onClickButton");      this.btnTapGet.addEventListener("click",this,"onClickButton");      this.btnTapEtc.addEventListener("click",this,"onClickButton");      this.btnInit.addEventListener("click",this,"onClickButton");      this.btnSave.addEventListener("click",this,"onClickButton");      var _loc2_ = 0;      while(_loc2_ < Common.Global.MUDefines.MACRO_MAIN_AREA_BTN_COUNT_MAX)      {         this.abtnHuntArea[_loc2_].addEventListener("click",this,"onClickbtnArea");         this.abtnHuntArea[_loc2_].addEventListener("rollOver",this,"onOverAndOutbtnArea");         this.abtnHuntArea[_loc2_].addEventListener("rollOut",this,"onOverAndOutbtnArea");         _loc2_ = _loc2_ + 1;      }      this.btnAutoPotionMenu.addEventListener("click",this,"onClickButton");      this.btnSkill1_conditionMenu.addEventListener("click",this,"onClickButton");      this.btnSupportPartyMenu.addEventListener("click",this,"onClickButton");      this.btnSkill2_conditionMenu.addEventListener("click",this,"onClickButton");      this.cbCombo.addEventListener("select",this,"onChangeCheckBox");      this.cbSkill1_delay.addEventListener("select",this,"onChangeCheckBox");      this.cbSkill1_condition.addEventListener("select",this,"onChangeCheckBox");      this.cbSkill2_delay.addEventListener("select",this,"onChangeCheckBox");      this.cbSkill2_condition.addEventListener("select",this,"onChangeCheckBox");      _loc2_ = 0;      while(_loc2_ < Common.Global.MUDefines.MACRO_MAIN_AREA_BTN_COUNT_MAX)      {         this.abtnGetArea[_loc2_].addEventListener("click",this,"onClickbtnArea");         _loc2_ = _loc2_ + 1;      }      this.btnRegItem.addEventListener("click",this,"onClickButton");      this.btnUnRegItem.addEventListener("click",this,"onClickButton");      this.cbGetAllItem.addEventListener("select",this,"onChangeCheckBox");      this.cbSelectiveGetItem.addEventListener("select",this,"onChangeCheckBox");      this.btnConnect.addEventListener("click",this,"onClickButton");   }   function onClickButton(event)   {      Selection.setFocus(null);      switch(event.target._name)      {         case "btnTapHunt":            this.ShowTap(Common.Global.MUDefines.MACRO_MAIN_TAP_TYPE_HUNT,this.m_iCharType);            break;         case "btnTapGet":            this.ShowTap(Common.Global.MUDefines.MACRO_MAIN_TAP_TYPE_ITEM,this.m_iCharType);            break;         case "btnTapEtc":            this.ShowTap(Common.Global.MUDefines.MACRO_MAIN_TAP_TYPE_ETC,this.m_iCharType);            break;         case "btnInit":            flash.external.ExternalInterface.call(String(event.target._name));            this.btnInit.SetIntervalDisable(this.m_iBtnDelay);            break;         case "btnSave":            this.tiItemName.__set__text("");            this.btnSave.SetIntervalDisable(this.m_iBtnDelay);            this.GetMacroOption();            break;         case "btnAutoPotionMenu":            flash.external.ExternalInterface.call("btnMenu",0);            break;         case "btnSupportPartyMenu":            flash.external.ExternalInterface.call("btnMenu",1);            break;         case "btnSkill1_conditionMenu":            flash.external.ExternalInterface.call("btnMenu",2);            break;         case "btnSkill2_conditionMenu":            flash.external.ExternalInterface.call("btnMenu",3);            break;         case "btnRegItem":            if(this.tiItemName.__get__text() != "")            {               if(this.m_iItemListMax <= this.slRegList.__get__dataProvider().length)               {                  this.tiItemName.__set__text("");                  flash.external.ExternalInterface.call("onClickbtnRegItemMaxOver","");                  return undefined;               }               var _loc2_ = 0;               while(_loc2_ < this.slRegList.__get__dataProvider().length)               {                  if(this.slRegList.__get__dataProvider()[_loc2_] != undefined)                  {                     if(this.slRegList.__get__dataProvider()[_loc2_] == this.tiItemName.__get__text())                     {                        this.tiItemName.__set__text("");                        flash.external.ExternalInterface.call("onClickbtnRegItemSameWord","");                        return undefined;                     }                  }                  _loc2_ = _loc2_ + 1;               }               this.slRegList.__get__dataProvider().push(this.tiItemName.__get__text());               this.slRegList.invalidate();               this.tiItemName.__set__text("");            }            else            {               flash.external.ExternalInterface.call("onClickbtnRegItemEmptyWord","");            }            break;         case "btnUnRegItem":            if(this.slRegList.__get__dataProvider().length == 0)            {               flash.external.ExternalInterface.call("onClickbtnUnRegItemEmptyList","");               return undefined;            }            if(this.slRegList.__get__selectedIndex() == -1 || this.slRegList.__get__dataProvider()[this.slRegList.__get__selectedIndex()] == undefined)            {               flash.external.ExternalInterface.call("onClickbtnUnRegItemNoneSelect","");               return undefined;            }            this.slRegList.__get__dataProvider().splice(this.slRegList.__get__selectedIndex(),1);            this.slRegList.invalidate();            break;         case "btnConnect":            flash.external.ExternalInterface.call(String(event.target._name));      }   }   function onClickbtnArea(event)   {      var _loc2_ = event.target;      switch(this.m_iTapType)      {         case Common.Global.MUDefines.MACRO_MAIN_TAP_TYPE_HUNT:            if(Number(_loc2_.__get__label()) > this.m_iHuntAreaMax)            {               return undefined;            }            break;         case Common.Global.MUDefines.MACRO_MAIN_TAP_TYPE_ITEM:            if(Number(_loc2_.__get__label()) > this.m_iGetAreaMax)            {               return undefined;            }            break;      }      this.SetAreaState(this.m_iTapType,Number(_loc2_.__get__label()));   }   function onOverAndOutbtnArea(event)   {      switch(event.type)      {         case "rollOver":            var _loc2_ = event.target;            if(this.CheckAreaBtnLimits(Number(_loc2_.__get__label())) == true)            {               this.mcAreaLimitsCaution._visible = true;            }            break;         case "rollOut":            this.mcAreaLimitsCaution._visible = false;      }   }   function onChangeCheckBox(event)   {      switch(event.target._name)      {         case "cbCombo":            if(this.cbCombo.__get__selected() == true)            {               this.cbSkill1_delay.__set__selected(false);               this.cbSkill2_delay.__set__selected(false);               this.cbSkill1_condition.__set__selected(false);               this.cbSkill2_condition.__set__selected(false);            }            flash.external.ExternalInterface.call("onSelectedcbCombo",this.cbCombo.__get__selected());            break;         case "cbSkill1_delay":            if(this.cbSkill1_delay.__get__selected() == true)            {               if(this.cbCombo._visible == true && this.cbCombo.__get__selected() == true)               {                  this.cbSkill1_delay.__set__selected(false);                  flash.external.ExternalInterface.call("onCheckComboSkillDelay1","");                  break;               }               this.cbSkill1_condition.__set__selected(false);            }            break;         case "cbSkill2_delay":            if(this.cbSkill2_delay.__get__selected() == true)            {               if(this.cbCombo._visible == true && this.cbCombo.__get__selected() == true)               {                  this.cbSkill2_delay.__set__selected(false);                  flash.external.ExternalInterface.call("onCheckComboSkillDelay2","");                  break;               }               this.cbSkill2_condition.__set__selected(false);            }            break;         case "cbSkill1_condition":            if(this.cbSkill1_condition.__get__selected() == true)            {               if(this.cbCombo._visible == true && this.cbCombo.__get__selected() == true)               {                  this.cbSkill1_condition.__set__selected(false);                  flash.external.ExternalInterface.call("onCheckComboSkillCondition1","");                  break;               }               this.cbSkill1_delay.__set__selected(false);            }            break;         case "cbSkill2_condition":            if(this.cbSkill2_condition.__get__selected() == true)            {               if(this.cbCombo._visible == true && this.cbCombo.__get__selected() == true)               {                  this.cbSkill2_condition.__set__selected(false);                  flash.external.ExternalInterface.call("onCheckComboSkillCondition2","");                  break;               }               this.cbSkill2_delay.__set__selected(false);            }            break;         case "cbGetAllItem":            if(this.cbGetAllItem.__get__selected() == true)            {               this.cbSelectiveGetItem.__set__selected(false);               this.cbJewelItem.__set__disabled(true);               this.cbSetItem.__set__disabled(true);               this.cbZen.__set__disabled(true);               this.cbExcellentItem.__set__disabled(true);               this.cbEtcGetItem.__set__disabled(true);            }            break;         case "cbSelectiveGetItem":            if(this.cbSelectiveGetItem.__get__selected() == true)            {               this.cbGetAllItem.__set__selected(false);               this.cbJewelItem.__set__disabled(false);               this.cbSetItem.__set__disabled(false);               this.cbZen.__set__disabled(false);               this.cbExcellentItem.__set__disabled(false);               this.cbEtcGetItem.__set__disabled(false);            }            else            {               this.cbJewelItem.__set__disabled(true);               this.cbSetItem.__set__disabled(true);               this.cbZen.__set__disabled(true);               this.cbExcellentItem.__set__disabled(true);               this.cbEtcGetItem.__set__disabled(true);            }      }   }   function SetTabButtonVisible(iTapIndex, bVisible)   {      if(bVisible == undefined)      {         return undefined;      }      switch(iTapIndex)      {         case Common.Global.MUDefines.MACRO_MAIN_TAP_TYPE_HUNT:            this.btnTapHunt._visible = bVisible;            break;         case Common.Global.MUDefines.MACRO_MAIN_TAP_TYPE_ITEM:            this.btnTapGet._visible = bVisible;            break;         case Common.Global.MUDefines.MACRO_MAIN_TAP_TYPE_ETC:            this.btnTapEtc._visible = bVisible;      }   }   function SetMacroMainInfo(strTitle, strTapHunt, strTapGet, strTapEtc, strInitBtn, strSaveBtn, strHuntArea, strNormalAttack, strCloseRangeSkill, strLongRangeCounter, strReturnPoint, strAutoPotion, strSupportParty, strAutoHeal, strDrainLife, strBasicSkill, strSkill1, strSkill2, strDelay, strTimeUnit, strCondition, strCombo, strUseDarkSpirit, strAutoAttack, strNoneAttack, strWithAttack, strBuff, strGetArea, strItemRepair, strGetAllItem, strSelectiveGetItem, strJewelItem, strSetItem, strZen, strExcellentItem, strEtcGetItem, strRegItem, strUnRegItem, strRegItemList, strAcceptParty_friend, strAcceptParty_guild, strUseEliteManaPotion, strFacebookInfo, strConnect)   {      this.tfTitle.__set__text(strTitle);      this.btnTapHunt.__set__label(strTapHunt);      this.btnTapGet.__set__label(strTapGet);      this.btnTapEtc.__set__label(strTapEtc);      this.btnInit.__set__label(strInitBtn);      this.btnSave.__set__label(strSaveBtn);      this.tfHuntArea.__set__text(strHuntArea);      this.cbNormalAttack.__set__label(strNormalAttack);      this.cbCloseRangeSkill.__set__label(strCloseRangeSkill);      this.cbLongRangeCounter.__set__label(strLongRangeCounter);      this.cbReturnPoint.__set__label(strReturnPoint);      this.tfReturn_timeUnit.__set__text(strTimeUnit);      this.cbAutoPotion.__set__label(strAutoPotion);      this.cbSupportParty.__set__label(strSupportParty);      this.cbAutoHeal.__set__label(strAutoHeal);      this.cbDrainLife.__set__label(strDrainLife);      this.tfBasicSkill.__set__text(strBasicSkill);      this.tfSkill1.__set__text(strSkill1);      this.cbSkill1_delay.__set__label(strDelay);      this.tfSkill1_timeUnit.__set__text(strTimeUnit);      this.cbSkill1_condition.__set__label(strCondition);      this.tfSkill2.__set__text(strSkill2);      this.cbSkill2_delay.__set__label(strDelay);      this.tfSkill2_timeUnit.__set__text(strTimeUnit);      this.cbSkill2_condition.__set__label(strCondition);      this.cbCombo.__set__label(strCombo);      this.cbUseDarkSpirit.__set__label(strUseDarkSpirit);      this.rbAutoAttack.__set__label(strAutoAttack);      this.rbNoneAttack.__set__label(strNoneAttack);      this.rbWithAttack.__set__label(strWithAttack);      this.cbBuff.__set__label(strBuff);      this.tfGetArea.__set__text(strGetArea);      this.cbItemRepair.__set__label(strItemRepair);      this.cbGetAllItem.__set__label(strGetAllItem);      this.cbSelectiveGetItem.__set__label(strSelectiveGetItem);      this.cbJewelItem.__set__label(strJewelItem);      this.cbSetItem.__set__label(strSetItem);      this.cbZen.__set__label(strZen);      this.cbExcellentItem.__set__label(strExcellentItem);      this.cbEtcGetItem.__set__label(strEtcGetItem);      this.btnRegItem.__set__label(strRegItem);      this.btnUnRegItem.__set__label(strUnRegItem);      this.tfRegItemList.__set__text(strRegItemList);      this.cbAcceptParty_friend.__set__label(strAcceptParty_friend);      this.cbAcceptParty_guild.__set__label(strAcceptParty_guild);      this.cbUseEliteManaPotion.__set__label(strUseEliteManaPotion);      this.taFacebookInfo.__set__text(strFacebookInfo);      this.btnConnect.__set__label(strConnect);   }   function SetMacroOption(aOption, aItemList)   {      if(aOption.length == 0 || aOption.length > Common.Global.MUDefines.MACRO_MAIN_ARRAY_MAX)      {         return undefined;      }      this.m_iHuntAreaMax = Number(aOption[Common.Global.MUDefines.MACRO_MAIN_ARRAY_HUNT_MAX]);      this.SetAreaState(Common.Global.MUDefines.MACRO_MAIN_TAP_TYPE_HUNT,Number(aOption[Common.Global.MUDefines.MACRO_MAIN_ARRAY_HUNT_RANGE]));      this.m_iGetAreaMax = Number(aOption[Common.Global.MUDefines.MACRO_MAIN_ARRAY_ITEM_MAX]);      this.SetAreaState(Common.Global.MUDefines.MACRO_MAIN_TAP_TYPE_ITEM,Number(aOption[Common.Global.MUDefines.MACRO_MAIN_ARRAY_ITEM_RANGE]));      this.cbAutoPotion.__set__selected(Boolean(aOption[Common.Global.MUDefines.MACRO_MAIN_ARRAY_USE_POTION]));      this.cbLongRangeCounter.__set__selected(Boolean(aOption[Common.Global.MUDefines.MACRO_MAIN_ARRAY_LONG_RANGE_COUNTER]));      this.cbCloseRangeSkill.__set__selected(Boolean(aOption[Common.Global.MUDefines.MACRO_MAIN_ARRAY_APPROACH_ATTACK_SKILL]));      this.cbReturnPoint.__set__selected(Boolean(aOption[Common.Global.MUDefines.MACRO_MAIN_ARRAY_RETURN_START_POS]));      this.cbSkill1_delay.__set__selected(Boolean(aOption[Common.Global.MUDefines.MACRO_MAIN_ARRAY_USE_DELAY_SKILL1]));      this.cbSkill1_condition.__set__selected(Boolean(aOption[Common.Global.MUDefines.MACRO_MAIN_ARRAY_USE_COND_SKILL1]));      this.cbSkill2_delay.__set__selected(Boolean(aOption[Common.Global.MUDefines.MACRO_MAIN_ARRAY_USE_DELAY_SKILL2]));      this.cbSkill2_condition.__set__selected(Boolean(aOption[Common.Global.MUDefines.MACRO_MAIN_ARRAY_USE_COND_SKILL2]));      this.cbCombo.__set__selected(Boolean(aOption[Common.Global.MUDefines.MACRO_MAIN_ARRAY_SKILL_COMBO]));      this.cbBuff.__set__selected(Boolean(aOption[Common.Global.MUDefines.MACRO_MAIN_ARRAY_SUSTAIN_BUFF]));      this.cbUseDarkSpirit.__set__selected(Boolean(aOption[Common.Global.MUDefines.MACRO_MAIN_ARRAY_USE_DARK_SPIRIT]));      this.cbSupportParty.__set__selected(Boolean(aOption[Common.Global.MUDefines.MACRO_MAIN_ARRAY_SUPPORT_PARTY]));      this.cbAutoHeal.__set__selected(Boolean(aOption[Common.Global.MUDefines.MACRO_MAIN_ARRAY_AUTO_HEAL]));      this.cbDrainLife.__set__selected(Boolean(aOption[Common.Global.MUDefines.MACRO_MAIN_ARRAY_DRAIN_LIFE]));      this.cbNormalAttack.__set__selected(Boolean(aOption[Common.Global.MUDefines.MACRO_MAIN_ARRAY_USE_BASIC_ATTACK]));      this.cbItemRepair.__set__selected(Boolean(aOption[Common.Global.MUDefines.MACRO_MAIN_ARRAY_REPAIR_ITEM]));      this.cbGetAllItem.__set__selected(Boolean(aOption[Common.Global.MUDefines.MACRO_MAIN_ARRAY_COLLECT_ALL]));      this.cbSelectiveGetItem.__set__selected(Boolean(aOption[Common.Global.MUDefines.MACRO_MAIN_ARRAY_COLLECT_SELECTED]));      this.cbJewelItem.__set__selected(Boolean(aOption[Common.Global.MUDefines.MACRO_MAIN_ARRAY_COLLECT_STONE]));      this.cbSetItem.__set__selected(Boolean(aOption[Common.Global.MUDefines.MACRO_MAIN_ARRAY_COLLECT_SET]));      this.cbZen.__set__selected(Boolean(aOption[Common.Global.MUDefines.MACRO_MAIN_ARRAY_COLLECT_ZEN]));      this.cbExcellentItem.__set__selected(Boolean(aOption[Common.Global.MUDefines.MACRO_MAIN_ARRAY_Collect_Excellent]));      this.cbEtcGetItem.__set__selected(Boolean(aOption[Common.Global.MUDefines.MACRO_MAIN_ARRAY_COLLECT_LISTED]));      this.cbAcceptParty_friend.__set__selected(Boolean(aOption[Common.Global.MUDefines.MACRO_MAIN_ARRAY_ACCEPTPARTY_FRIEND]));      this.cbAcceptParty_guild.__set__selected(Boolean(aOption[Common.Global.MUDefines.MACRO_MAIN_ARRAY_ACCEPTPARTY_GUILD]));      this.cbUseEliteManaPotion.__set__selected(Boolean(aOption[Common.Global.MUDefines.MACRO_MAIN_ARRAY_USE_ELITE_MANA_POTION]));      switch(Number(aOption[Common.Global.MUDefines.MACRO_MAIN_ARRAY_DARKSPIRIT_TYPE]))      {         case 0:            this.rbNoneAttack.__set__selected(true);            break;         case 1:            this.rbAutoAttack.__set__selected(true);            break;         case 2:            this.rbWithAttack.__set__selected(true);      }      this.tiReturn_delayInput.__set__text(String(Number(aOption[Common.Global.MUDefines.MACRO_MAIN_ARRAY_RETURN_INTERVAL])));      this.tiSkill1_delayInput.__set__text(String(Number(aOption[Common.Global.MUDefines.MACRO_MAIN_ARRAY_DELAY_TIME_SKILL1])));      this.tiSkill2_delayInput.__set__text(String(Number(aOption[Common.Global.MUDefines.MACRO_MAIN_ARRAY_DELAY_TIME_SKILL2])));      if(aItemList != undefined)      {         this.SetItemList(aItemList);      }      else      {         this.ClearItemList();      }      this.m_iTempHuntAreaMax = Number(aOption[Common.Global.MUDefines.MACRO_MAIN_ARRAY_HUNT_MAX]);   }   function GetMacroOption()   {      var _loc2_ = 0;      if(this.rbNoneAttack.__get__selected() == true)      {         _loc2_ = 0;      }      else if(this.rbAutoAttack.__get__selected() == true)      {         _loc2_ = 1;      }      else if(this.rbWithAttack.__get__selected() == true)      {         _loc2_ = 2;      }      if(this.tiReturn_delayInput.__get__text() == "")      {         this.tiReturn_delayInput.__set__text("0");      }      if(this.tiSkill1_delayInput.__get__text() == "")      {         this.tiSkill1_delayInput.__set__text("0");      }      if(this.tiSkill2_delayInput.__get__text() == "")      {         this.tiSkill2_delayInput.__set__text("0");      }      var _loc3_ = parseInt(this.tiReturn_delayInput.__get__text(),10);      var _loc4_ = parseInt(this.tiSkill1_delayInput.__get__text(),10);      var _loc6_ = parseInt(this.tiSkill2_delayInput.__get__text(),10);      var _loc7_ = Array(this.m_iHuntAreaValue,this.m_iHuntAreaMax,this.m_iGetAreaValue,this.m_iGetAreaMax,this.cbAutoPotion.__get__selected(),this.cbLongRangeCounter.__get__selected(),this.cbCloseRangeSkill.__get__selected(),this.cbReturnPoint.__get__selected(),this.cbSkill1_delay.__get__selected(),this.cbSkill1_condition.__get__selected(),this.cbSkill2_delay.__get__selected(),this.cbSkill2_condition.__get__selected(),this.cbCombo.__get__selected(),this.cbBuff.__get__selected(),this.cbUseDarkSpirit.__get__selected(),this.cbSupportParty.__get__selected(),this.cbAutoHeal.__get__selected(),this.cbDrainLife.__get__selected(),this.cbNormalAttack.__get__selected(),this.cbItemRepair.__get__selected(),this.cbGetAllItem.__get__selected(),this.cbSelectiveGetItem.__get__selected(),this.cbJewelItem.__get__selected(),this.cbSetItem.__get__selected(),this.cbZen.__get__selected(),this.cbExcellentItem.__get__selected(),this.cbEtcGetItem.__get__selected(),this.cbAcceptParty_friend.__get__selected(),this.cbAcceptParty_guild.__get__selected(),this.cbUseEliteManaPotion.__get__selected(),_loc2_,_loc3_,_loc4_,_loc6_);      var _loc5_ = this.slRegList.__get__dataProvider().requestItemRange(0,this.slRegList.__get__dataProvider().length);      flash.external.ExternalInterface.call("SaveMacroOption",_loc7_,_loc5_);   }   function ClearItemList()   {      this.slRegList.__get__dataProvider().cleanUp();      this.slRegList.__set__dataProvider(new gfx.data.DataProvider());   }   function SetItemList(aItemList)   {      this.ClearItemList();      if(aItemList.length != 0)      {         var _loc2_ = 0;         while(_loc2_ < aItemList.length)         {            this.slRegList.__get__dataProvider().push(aItemList[_loc2_]);            _loc2_ = _loc2_ + 1;         }         this.slRegList.invalidate();      }   }   function OpenSelectSkillSlot(iSkillCount)   {      if(iSkillCount == 0)      {         return undefined;      }      var _loc2_ = 0;      while(_loc2_ < Common.Global.MUDefines.MACRO_MAIN_SELECT_SKILL_SLOT)      {         if(_loc2_ < iSkillCount)         {            this.mcSkillSlot["mcSkill_" + String(_loc2_)]._visible = true;         }         else         {            this.mcSkillSlot["mcSkill_" + String(_loc2_)]._visible = false;         }         _loc2_ = _loc2_ + 1;      }      this.mcSkillSlot._visible = true;   }   function HideSelectSkillSlot()   {      if(this.mcSkillSlot._visible == false)      {         return undefined;      }      this.mcSkillSlot._visible = false;      var _loc2_ = 0;      while(_loc2_ < Common.Global.MUDefines.MACRO_MAIN_SELECT_SKILL_SLOT)      {         this.mcSkillSlot["mcSkill_" + String(_loc2_)]._visible = false;         _loc2_ = _loc2_ + 1;      }   }   function HideAllWindows()   {      this.mcMacroMain._visible = false;      this.mcTapHunt._visible = false;      this.mcTapItem._visible = false;      this.mcTapEtc._visible = false;      this.SetCharacterTypeOption(-1);      this.HideSelectSkillSlot();   }   function ShowTap(_iTapType, _iCharType)   {      this.HideAllWindows();      this.m_iTapType = _iTapType;      this.m_iCharType = _iCharType;      switch(_iTapType)      {         case Common.Global.MUDefines.MACRO_MAIN_TAP_TYPE_HUNT:            this.mcTapHunt._visible = true;            this.mcTapItem._visible = false;            this.mcTapEtc._visible = false;            this.btnTapHunt.__set__selected(true);            this.btnTapHunt.__set__disabled(true);            this.btnTapGet.__set__selected(false);            this.btnTapGet.__set__disabled(false);            this.btnTapEtc.__set__selected(false);            this.btnTapEtc.__set__disabled(false);            this.SetCharacterTypeOption(_iCharType);            break;         case Common.Global.MUDefines.MACRO_MAIN_TAP_TYPE_ITEM:            this.mcTapHunt._visible = false;            this.mcTapItem._visible = true;            this.mcTapEtc._visible = false;            this.btnTapHunt.__set__selected(false);            this.btnTapHunt.__set__disabled(false);            this.btnTapGet.__set__selected(true);            this.btnTapGet.__set__disabled(true);            this.btnTapEtc.__set__selected(false);            this.btnTapEtc.__set__disabled(false);            break;         case Common.Global.MUDefines.MACRO_MAIN_TAP_TYPE_ETC:            this.mcTapHunt._visible = false;            this.mcTapItem._visible = false;            this.mcTapEtc._visible = true;            this.btnTapHunt.__set__selected(false);            this.btnTapHunt.__set__disabled(false);            this.btnTapGet.__set__selected(false);            this.btnTapGet.__set__disabled(false);            this.btnTapEtc.__set__selected(true);            this.btnTapEtc.__set__disabled(true);      }      this.mcMacroMain._visible = true;      this.mcTabLimitsCaution._visible = this.CheckTabBtnLimits();      flash.external.ExternalInterface.call("btnTap",this.m_iTapType);   }   function SetCharacterTypeOption(_iCharType)   {      switch(_iCharType)      {         case Common.Global.MUDefines.BASE_CLASS_TYPE_WIZARD:            this.cbSupportParty._visible = true;            this.btnSupportPartyMenu._visible = true;            this.cbAutoHeal._visible = false;            this.cbDrainLife._visible = false;            this.cbCombo._visible = false;            this.mcSubSkill._visible = true;            this.mcDarkSpirit._visible = false;            break;         case Common.Global.MUDefines.BASE_CLASS_TYPE_KNIGHT:            this.cbSupportParty._visible = false;            this.btnSupportPartyMenu._visible = false;            this.cbAutoHeal._visible = false;            this.cbDrainLife._visible = false;            this.cbCombo._visible = true;            this.mcSubSkill._visible = true;            this.mcDarkSpirit._visible = false;            break;         case Common.Global.MUDefines.BASE_CLASS_TYPE_ELF:            this.cbSupportParty._visible = true;            this.btnSupportPartyMenu._visible = true;            this.cbAutoHeal._visible = true;            this.cbDrainLife._visible = false;            this.cbCombo._visible = false;            this.mcSubSkill._visible = true;            this.mcDarkSpirit._visible = false;            break;         case Common.Global.MUDefines.BASE_CLASS_TYPE_DARK_LORD:            this.cbSupportParty._visible = false;            this.btnSupportPartyMenu._visible = false;            this.cbAutoHeal._visible = false;            this.cbDrainLife._visible = false;            this.cbCombo._visible = false;            this.mcSubSkill._visible = false;            this.mcDarkSpirit._visible = true;            break;         case Common.Global.MUDefines.BASE_CLASS_TYPE_SUMMONER:            this.cbSupportParty._visible = false;            this.btnSupportPartyMenu._visible = false;            this.cbAutoHeal._visible = false;            this.cbDrainLife._visible = true;            this.cbCombo._visible = false;            this.mcSubSkill._visible = true;            this.mcDarkSpirit._visible = false;            break;         default:            this.cbSupportParty._visible = false;            this.btnSupportPartyMenu._visible = false;            this.cbAutoHeal._visible = false;            this.cbDrainLife._visible = false;            this.cbCombo._visible = false;            this.mcSubSkill._visible = true;            this.mcDarkSpirit._visible = false;      }   }   function SetAreaState(iTapType, iValue)   {      if(iValue < 0)      {         return undefined;      }      switch(iTapType)      {         case Common.Global.MUDefines.MACRO_MAIN_TAP_TYPE_HUNT:            this.m_iHuntAreaValue = iValue;            var _loc2_ = 0;            while(_loc2_ < Common.Global.MUDefines.MACRO_MAIN_AREA_BTN_COUNT_MAX)            {               this.amcHuntArea[_loc2_]._visible = true;               this.abtnHuntArea[_loc2_]._visible = true;               if(_loc2_ < this.m_iHuntAreaValue)               {                  this.abtnHuntArea[_loc2_].selected = false;                  this.amcHuntArea[_loc2_].gotoAndStop(2);               }               else               {                  this.abtnHuntArea[_loc2_].selected = true;                  this.amcHuntArea[_loc2_].gotoAndStop(1);               }               _loc2_ = _loc2_ + 1;            }            break;         case Common.Global.MUDefines.MACRO_MAIN_TAP_TYPE_ITEM:            this.m_iGetAreaValue = iValue;            _loc2_ = 0;            while(_loc2_ < Common.Global.MUDefines.MACRO_MAIN_AREA_BTN_COUNT_MAX)            {               this.amcGetArea[_loc2_]._visible = true;               this.abtnGetArea[_loc2_]._visible = true;               if(_loc2_ < this.m_iGetAreaValue)               {                  this.abtnGetArea[_loc2_].selected = false;                  this.amcGetArea[_loc2_].gotoAndStop(2);               }               else               {                  this.abtnGetArea[_loc2_].selected = true;                  this.amcGetArea[_loc2_].gotoAndStop(1);               }               _loc2_ = _loc2_ + 1;            }      }   }   function SetItemListMax(iMax)   {      this.m_iItemListMax = iMax;   }   function SetcbCombo(bSelect)   {      this.cbCombo.__set__selected(bSelect);   }   function SetInputLength(_iType, _iLength)   {      if((var _loc0_ = _iType) === Common.Global.MUDefines.MACRO_MAIN_TAP_TYPE_ITEM)      {         this.tiItemName.__set__maxChars(_iLength);      }   }   function RollBackWord(_iType)   {      if((var _loc0_ = _iType) === Common.Global.MUDefines.MACRO_MAIN_TAP_TYPE_ITEM)      {         this.tiItemName.TextRollBack();      }   }   function InitLimitsWords(strTabWords, strAreaBtnWords)   {      this.mcTabLimitsCaution.taCaution.text = strTabWords;      this.mcAreaLimitsCaution.taCaution.text = strAreaBtnWords;   }   function SetLimits(bLimits)   {      if(this.m_bLimits == bLimits)      {         return undefined;      }      this.m_bLimits = bLimits;      if(bLimits == false)      {         this.m_iHuntAreaMax = Common.Global.MUDefines.MACRO_MAIN_AREA_BTN_COUNT_MAX;         this.SetAreaState(Common.Global.MUDefines.MACRO_MAIN_TAP_TYPE_HUNT,this.m_iHuntAreaValue);         this.m_iGetAreaMax = Common.Global.MUDefines.MACRO_MAIN_AREA_BTN_COUNT_MAX;         this.SetAreaState(Common.Global.MUDefines.MACRO_MAIN_TAP_TYPE_ITEM,this.m_iGetAreaValue);      }      else      {         this.m_iHuntAreaMax = this.m_iTempHuntAreaMax;         this.SetAreaState(Common.Global.MUDefines.MACRO_MAIN_TAP_TYPE_HUNT,this.m_iHuntAreaValue <= this.m_iHuntAreaMax?this.m_iHuntAreaValue:this.m_iHuntAreaMax);         this.m_iGetAreaMax = 0;         this.SetAreaState(Common.Global.MUDefines.MACRO_MAIN_TAP_TYPE_ITEM,0);         this.cbItemRepair.__set__selected(false);         this.cbGetAllItem.__set__selected(false);         this.cbSelectiveGetItem.__set__selected(false);         this.cbJewelItem.__set__selected(false);         this.cbSetItem.__set__selected(false);         this.cbZen.__set__selected(false);         this.cbExcellentItem.__set__selected(false);         this.cbEtcGetItem.__set__selected(false);      }      this.cbItemRepair.__set__disabled(bLimits);      this.cbGetAllItem.__set__disabled(bLimits);      this.cbSelectiveGetItem.__set__disabled(bLimits);      this.cbJewelItem.__set__disabled(bLimits);      this.cbSetItem.__set__disabled(bLimits);      this.cbZen.__set__disabled(bLimits);      this.cbExcellentItem.__set__disabled(bLimits);      this.cbEtcGetItem.__set__disabled(bLimits);      this.tiItemName.__set__disabled(bLimits);      this.slRegList.__set__disabled(bLimits);      this.btnRegItem.__set__disabled(bLimits);      this.btnUnRegItem.__set__disabled(bLimits);   }   function CheckTabBtnLimits()   {      if(this.m_bLimits == false)      {         return false;      }      if(this.m_iTapType == Common.Global.MUDefines.MACRO_MAIN_TAP_TYPE_ITEM)      {         return true;      }   }   function CheckAreaBtnLimits(iBtnNumber)   {      if(this.m_bLimits == false)      {         return false;      }      if(this.m_iTapType == Common.Global.MUDefines.MACRO_MAIN_TAP_TYPE_HUNT && iBtnNumber > this.m_iHuntAreaMax)      {         return true;      }   }   function SetFaceBookVisible(bVisible)   {      this.mcFaceBookMark._visible = bVisible;      this.taFacebookInfo._visible = bVisible;      this.btnConnect._visible = bVisible;   }}

So try this with your DLL source.
Code:
//Should move to a custom header file, for better organized...
#define HOOK_FB_VISIBLE 0x00A06E31
#define JMPBACK_FB_VISIBLE 0x00A06E36

extern int iFacebookVisible; //PS: You can try to set it from Server Side, use same method as AGILITYBUGFIX
void SetFacebookVisible();

// .cpp
char sFB_1[4] = "%d";
char sFB_2[20] = "SetFaceBookVisible";

int iFacebookVisible = 0; //0 = false (hide fb)
void __declspec(naked) SetFacebookVisible()
{
    _asm
     {
        push iFacebookVisible;
        lea edx, sFB_1;
        push edx;
        lea edx, sFB_2;
        push edx;
        push[ebp - 0x04];
        mov edx, 0x0095A6EA;
        call edx;
        add esp, 0x10;

        //jmpback
        push 00;
        mov ecx, [ebp - 0x04];
        mov edx, JMPBACK_FB_VISIBLE;
        jmp edx;
    }
}
//SetHook is in dllmain.cpp
void SetHook()
{
    HookThis((DWORD)&SetFacebookVisible, HOOK_FB_VISIBLE);
    //...
}

PS: About help you know how to reversing main, dec, enc, decompile ,modify files... Really I don't know how to start to talk with you... nvm man, just forget it...
 
Last edited:
Newbie Spellweaver
Joined
Jan 1, 2018
Messages
24
Reaction score
0
w
Death Stab, i think its fixed
a60WgOB - [Release] IGCN Season 9.5  (src-x9.5 9.5.1.15) SRC (April/2016) - RaGEZONE Forums


Change this


to this







I manage to run chat server by changing the ExDbPort in the ChatServer.cfg to 56906 but still "offline talking".
When i try to create a room client freeze for a while but i got error "offline talking".

dear old friend, where can i see this?
PMSG_SETAGILITYBUG pAgilityBug;
pAgilityBug.h.c = 0xC1;
pAgilityBug.h.headcode = 0xFA;
pAgilityBug.h.size = sizeof(pAgilityBug);
pAgilityBug.subcode = 0xA2;

if (lpObj->Class == CLASS_RAGEFIGHTER || lpObj->Class == CLASS_ELF)
{
pAgilityBug.value = 0x0F;
}
else
{
pAgilityBug.value = 0x0F;
}

IOCP.DataSend(aIndex, (LPBYTE)&pAgilityBug, sizeof(pAgilityBug));
 

Attachments

You must be registered for see attachments list
Newbie Spellweaver
Joined
Jan 11, 2013
Messages
57
Reaction score
12
open notepad++, Ctrl F and choose Find In Files (in your source folder)
 
Joined
Aug 29, 2011
Messages
512
Reaction score
33
Does any one test gen system, quest and ranking?

I have not tested it yet, I'm trying to fix the period items that are not being deleted when they expire.

Have you fixed the items period ??? anyone would have any idea where I should fix ??


Enviado do meu iPhone usando Tapatalk
 
Back
Top