shadowrecon Posted January 31, 2012 Share Posted January 31, 2012 (edited) Heres a magic include ive been working on for some time. it does any magic spell, and fixes the magic book if not set to default, scrolls for spells ect. it also takes in account if in members world or free (Because in members there is one more spell than in free) but it does any one of the 70 so spells. [updated] This is the current version im using and works really good. {=============================================================================== Runescape 2 Magic Routines--------------------------------------------------------------------------------* Function: SetMagicTab(Tab: Integer): Boolean; By: ShadowRecon.* Function: SetMagicTabEx(Deffence, Combat, Tele, Misc, Skill:Boolean; SortTab: Integer):Boolean; By: ShadowRecon.* Function: FixMagicTabs:Boolean; By: ShadowRecon.* Function: FixSpellBook(FixUp: Boolean): Boolean; By: ShadowRecon.* Function: GetSpellBounds(Spell:Integer):TBox; By: ShadowRecon* Function: CastSpellEx(Spell_Cords: TBox; CheckInactive: Boolean):Boolean; By: ShadowRecon* Function: CastSpell(Spell: Integer):Boolean; By: ShadowRecon.===============================================================================}{=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=const Bottom Spell Book Tab boundaries.Contributors: ShadowRecon.=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=}Const MTab_Deffence = 0; MTab_Combat = 1; MTab_Teleport = 2; MTab_Misc = 3; MTab_Skill = 4; MTab_SortLvl = 5; MTab_SortCmb = 6; MTab_SortTel = 7;{=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=const TelePort Spell Tab boundaries.Decription: Teleport Spells numbered in order of default spell book from zero.Contributors: ShadowRecon.=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=}Const Tele_Home = 0; Tele_MobArmy = 7; Tele_Varrock = 16; Tele_LumBridge = 19; Tele_Falador = 22; Tele_House = 24; Tele_Camelot = 27; Tele_Ardougne = 33; Tele_WatchTower = 38; Tele_Trollheim = 45; Tele_ApeAToll = 48; Tele_OtherLum = 55; Tele_OtherFally = 62; Tele_OtherCam = 67;{=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=const Skill Spell Tab boundaries.Decription: Skill Spells numbered in order of default spell book from zero.Contributors: ShadowRecon.=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=}Const Spell_Enchant_1 = 5; Spell_Bones2Bannas = 10; Spell_LowAlch = 14; Spell_Enchant_2 = 17; Spell_TeleGrab = 20; Spell_SuperHeat = 26; Spell_Enchant_3 = 29; Spell_HighAlch = 35; Spell_ChargeWater = 36; Spell_Enchant_4 = 37; Spell_ChargeEarth = 40; Spell_Bones2Peaches = 41; Spell_ChargeFire = 47; Spell_ChargeAir = 50; Spell_Enchant_5 = 52; Spell_Enchant_6 = 65;{=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=const Combat Spell Tab boundaries.Decription: Combat Spells numbered in order of default spell book from zero.Contributors: ShadowRecon.=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=}Const Spell_WindRush = 1; Spell_WindStrike = 2; Spell_Confuse = 3; Spell_WaterStrike = 4; Spell_EarthStrike = 6; Spell_Weaken = 8; Spell_FireStrike = 9; Spell_WindBolt = 11; Spell_Curse = 12; Spell_Bind = 13; Spell_WaterBolt = 15; Spell_EarthBolt = 18; Spell_FireBolt = 21; Spell_CrumbleUndead = 23; Spell_WindBlast = 25; Spell_WaterBlast = 28; Spell_IbanBlast = 30; Spell_SaraStrike = 42; Spell_Guthix = 43; Spell_Zamorak = 44; Spell_Snare = 31; Spell_MagicDart = 32; Spell_EarthBlast = 34; Spell_FireBlast = 39; Spell_WindWave = 46; Spell_WaterWave = 49; Spell_Vulnerability = 51; Spell_EarthWave = 53; Spell_Enfeeble = 54; Spell_FireWave = 56; Spell_Armady = 57; Spell_Entangle = 58; Spell_Stun = 59; Spell_Charge = 60; Spell_WindSurge = 61; Spell_TeleBlock = 63; Spell_WaterSurge = 64; Spell_EarthSurge = 66; Spell_FireSurge = 68; BlankSlot = 69; // Must Have! dont use{=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=const Spell Book Colors.Decription: Set Tab Sort Skill SortContributors: ShadowRecon.=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=}Const MTab_Selected = 16711422; Inactive_Spell = 519; Inactive_Hue = 3.18; Inactive_Sat = 0.00; Inactive_Tol = 2;{=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=Function: SetMagicTab(Tab: Integer): Boolean;Decription: Sets Magic Tab Selected.Contributors: ShadowRecon.=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=}Function SetMagicTab(STab: Integer; Select: Boolean): Boolean;Var MTab: TBox; TPA: TPointArray;begin Case (STab) of MTab_Deffence: MTab := Box(557, 444, 567, 457); MTab_Combat : MTab := Box(588, 444, 598, 457); MTab_Teleport: MTab := Box(607, 444, 620, 457); MTab_Misc : MTab := Box(630, 444, 639, 457); MTab_Skill : MTab := Box(647, 444, 664, 457); MTab_SortLvl : MTab := Box(679, 444, 688, 457); MTab_SortCmb : MTab := Box(698, 444, 711 ,457); MTab_SortTel : MTab := Box(716, 444, 729 ,457); end; if Select then // If you want to Select begin if FindColorsTolerance(TPA,MTab_Selected,MTab.x1+4,459,MTab.x2-4,462,0) then // Checks to See if its been selected begin Result := True; Exit; end; Writeln('Clicking Tabs'); MouseBox(MTab.x1,MTab.y1,MTab.x2,MTab.y2,ClickLeft); wait(550); if FindColorsTolerance(TPA,MTab_Selected,MTab.x1+4,459,MTab.x2-4,462,0) then // Checks to See if its been selected begin Result := True; Exit; end else begin result := False; exit; end; end; if not(Select) then // If you want to De-select begin if Not(FindColorsTolerance(TPA,MTab_Selected,MTab.x1+4,459,MTab.x2-4,462,0)) then // Checks to See if its not selected begin Result := True; Exit; end; repeat MouseBox(MTab.x1,MTab.y1,MTab.x2,MTab.y2,ClickLeft); wait(550); if Not(FindColorsTolerance(TPA,MTab_Selected,MTab.x1+4,459,MTab.x2-4,462,0)) then // Checks to See if its been un-selected begin Result := True; Exit; end else begin result := False; end; until True; end;end;{=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=Function: SetMagicTabEx(Deffence, Combat, Tele, Misc, Skill:Boolean; SortTab: Integer):Boolean;Decription: Sets All Magic Tabs to SectedContributors: ShadowRecon.=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=}Function SetMagicTabEx(Deffence, Combat, Tele, Misc, Skill:Boolean; SortTab: Integer):Boolean;begin SetMagicTab(MTab_Deffence,Deffence); waitRR(75,100); SetMagicTab(MTab_Combat, Combat); waitRR(75,100); SetMagicTab(MTab_Teleport, Tele); waitRR(75,100); SetMagicTab(MTab_misc, Misc); waitRR(75,100); SetMagicTab(MTab_Skill, Skill); waitRR(75,100); if SetMagicTab(SortTab,True) then WaitRR(100,250); result := True;end;{=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=Function: FixMagic:Boolean;Decription: Sets Spell Book To default.Contributors: ShadowRecon.=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=}Function FixMagicTabs:Boolean;begin if SetMagicTabEx(False,True,True,True,True,5) then result := True;end;{=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=Function: FixSpellBook(FixUp: Boolean): Boolean;Decription: Either makes spell book up or down.Contributors: ShadowRecon, Wanted.=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=}function FixSpellBook(FixUp: Boolean): Boolean;var TPA: TPointArray; B1, B2, B3: TBox;begin Result := False; if (FixUp) then if (GetColor(733, 222) = 1250841) then Exit; if (not (FixUp)) then if (GetColor(729, 417) = 592137) then Exit; Result := True; if (not (FindColors(TPA, 1250841, 722, 222, 736, 418))) then Exit; B1 := TPABounds(TPA); if (not (FindColors(TPA, 592137, 722, 222, 736, 418))) then Exit; B2 := TPABounds(TPA); B3 := Box(723, B1.Y1, 735, B2.Y2); if (FixUp) then DragMouseBox(B3.X1, B3.Y1, B3.X2, B3.Y2, 722, 207, 735, 220, True) else DragMouseBox(B3.X1, B3.Y1, B3.X2, B3.Y2, 722, 418, 734, 433, True)end;{=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=Function: GetSpellBounds(Spell:Integer):TBox;Decription: returns the cords of a spell.Contributors: ShadowRecon.=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=}Function GetSpellBounds(Spell:Integer):TBox;begin Case Spell of Tele_Home : Result := Box(567, 222, 582 ,237); Tele_MobArmy : Result := Box(592, 246, 607, 263); Tele_Varrock : Result := Box(661, 269, 680, 286); Tele_LumBridge : Result := Box(590, 294, 607, 309); Tele_Falador : Result := Box(664, 296, 677, 310); Tele_House : Result := Box(567, 319, 582, 333); Tele_Camelot : Result := Box(638, 317, 655, 335); Tele_Ardougne : Result := Box(638, 343, 654, 357); Tele_WatchTower : Result := Box(613, 364, 631, 382); Tele_Trollheim : Result := Box(639, 389, 655, 407); Tele_ApeAToll : Result := Box(566, 415, 582, 429); Tele_OtherLum : Result := Box(592, 354, 604, 369); Tele_OtherFally : Result := Box(617, 378, 629, 394); Tele_OtherCam : Result := Box(590, 401, 604, 418); Spell_Enchant_1 : Result := Box(687, 222, 702, 339); Spell_LowAlch : Result := Box(615, 269, 630, 286); Spell_Enchant_2 : Result := Box(687, 269, 702, 286); Spell_TeleGrab : Result := Box(612, 292, 630, 310); Spell_SuperHeat : Result := Box(612, 317, 629, 332); Spell_Enchant_3 : Result := Box(685, 317, 700, 332); Spell_HighAlch : Result := Box(690, 342, 705, 355); Spell_Enchant_4 : Result := Box(590, 365, 615, 380); Spell_Enchant_5 : Result := Box(663, 415, 672, 428); Spell_Bones2Bannas : Result := Box(663, 246, 681, 263); Spell_WindRush : Result := Box(592, 221, 608, 238); Spell_WindStrike : Result := Box(616, 219, 630, 237); Spell_Confuse : Result := Box(638, 221, 658, 239); Spell_WaterStrike : Result := Box(662, 223, 679, 237); Spell_EarthStrike : Result := Box(569, 249, 580, 260); Spell_Weaken : Result := Box(611, 242, 633, 262); Spell_FireStrike : Result := Box(640, 247, 652, 259); Spell_WindBolt : Result := Box(689, 250, 703, 263); Spell_Curse : Result := Box(562, 270, 581, 288); Spell_Bind : Result := Box(588, 267, 609, 289); Spell_WaterBolt : Result := Box(639, 273, 655, 288); Spell_WaterBlast : Result := Box(661, 319, 677, 333); Spell_EarthBolt : Result := Box(567, 300, 582, 310); Spell_FireBolt : Result := Box(639, 297, 655, 311); Spell_CrumbleUndead : Result := Box(685, 292, 703, 310); Spell_WindBlast : Result := Box(590, 318, 606, 334); Spell_IbanBlast : Result := Box(564, 340, 582, 359); Spell_Snare : Result := Box(588, 338, 607, 359); Spell_MagicDart : Result := Box(612, 340, 631, 361); Spell_EarthBlast : Result := Box(663, 341, 677, 359); Spell_ChargeWater : Result := Box(565, 366, 580, 380); Spell_FireBlast : Result := Box(663, 342, 676, 357); Spell_ChargeEarth : Result := Box(663, 366, 678, 380); Spell_Bones2Peaches : Result := Box(686, 365, 701, 383); Spell_SaraStrike : Result := Box(565, 390, 580, 405); Spell_Guthix : Result := Box(591, 391, 605, 404); Spell_Zamorak : Result := Box(614, 391, 630, 406); Spell_WindWave : Result := Box(661, 389, 678, 407); Spell_ChargeFire : Result := Box(686, 388, 700, 404); Spell_WaterWave : Result := Box(589, 413, 607, 433); Spell_ChargeAir : Result := Box(614, 415, 628, 428); Spell_Vulnerability : Result := Box(639, 412, 655, 432); Spell_EarthWave : Result := Box(686, 412, 704, 432); Spell_Enfeeble : Result := Box(566, 353, 583, 370); Spell_FireWave : Result := Box(613, 354, 630, 372); Spell_Entangle : Result := Box(662, 354, 680, 370); Spell_Stun : Result := Box(687, 353, 701, 371); Spell_WindSurge : Result := Box(589, 379, 606, 396); Spell_WaterSurge : Result := Box(660, 378, 677, 395); Spell_Enchant_6 : Result := Box(687, 379, 701, 395); Spell_EarthSurge : Result := Box(565, 402, 584, 420); Spell_FireSurge : Result := Box(613, 399, 630, 420); Spell_Armady : Result := Box(638, 357, 654, 373); Spell_Charge : Result := Box(565, 379, 582, 394); Spell_TeleBlock : Result := Box(639, 380, 655, 396); BlankSlot : Result := Box(637, 398, 659, 416); end;end;{=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=Function: CastSpellEx(Spell_Cords: TBox):Boolean;Decription: Cast Spell From Spell Book, With custom cords, Must set up Spell Book.Contributors: ShadowRecon.=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=}Function CastSpellEx(Spell_Cords: TBox; CheckInactive: Boolean):Boolean;Var S_S: TBox; TPA: TPointArray;begin if Not(GetCurrentTab = 7) then begin SetGameTab(7); waitRR(100,150); end; S_S := Spell_Cords; ColorToleranceSpeed(2); SetColorspeed2Modifiers(Inactive_Hue,Inactive_Sat); if CheckInactive then begin if FindColorsTolerance(TPA,Inactive_Spell,S_S.x1+1,S_S.y1+1,S_S.x2-1,S_S.y2-1,Inactive_Tol) then // Spell inactive begin ColorToleranceSpeed(1); SetColorspeed2Modifiers(0.14,0.14); result := False; exit; end; end; begin MouseBox(S_S.x1,S_S.y1,S_S.x2,S_S.y2,ClickLeft); WaitRR(100,150); Result := True; ColorToleranceSpeed(1); SetColorspeed2Modifiers(0.14,0.14); Exit; end;end;{=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=Function: CastSpell(Spell: Integer):Boolean;Decription: Cast Spell Fom Spell BookContributors: ShadowRecon.=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=}Function CastSpell(Spell:Integer):Boolean;Var TPA:TPointArray;begin if Not(GetCurrentTab = 7) then SetGameTab(7); WaitRR(100,150); SetMagicTabEx(False,True,True,True,True,MTab_SortLvl); if FindColorsTolerance(TPA,9631484,671,217,683,229,0) and (Spell > 3) then Inc(Spell); if Spell < 54 then FixSpellBook(True) else begin FixSpellBook(False); WaitRR(200,350); end; Result := CastSpellEx(GetSpellBounds(Spell),True)end; [/Code] Edited February 4, 2012 by shadowrecon Quote Link to comment Share on other sites More sharing options...
rsutton Posted January 31, 2012 Share Posted January 31, 2012 (edited) You should of posted this in UBeX, Last time I heard wanted was not adding skills to OSI unless he does them himself... but hey thanks for making it very so easy for the public. Lets get 5000 magic scripts going now... thats why wanted doesnt add in this type of code because it makes people stupid. Look at UBeX.. its made for stupid people ( sorry not trying to offend anyone ) but what I mean is we made it VERY easy to make scripts with the include file.... it takes little to no skill... Wanted is kind of agaionst it because he believes people need a brain or else we would end up like SRL. Sorry man. I could be wrong. Thing is I think that wanted wants to get away from being like SRL with "easy" type in scripts pretty much premade which made SRL turn to crap... the code turned into crap and the community got dumb because of it.... Notice their code which is 10000 months old and outdated... its because of includes like what UBeX and this magic include is... Edited January 31, 2012 by rsutton Quote Link to comment Share on other sites More sharing options...
FHannes Posted January 31, 2012 Share Posted January 31, 2012 You should of posted this in UBeX, Last time I heard wanted was not adding skills to OSI unless he does them himself... but hey thanks for making it very so easy for the public. Lets get 5000 magic scripts going now... thats why wanted doesnt add in this type of code because it makes people stupid. Look at UBeX.. its made for stupid people ( sorry not trying to offend anyone ) but what I mean is we made it VERY easy to make scripts with the include file.... it takes little to no skill... Wanted is kind of agaionst it because he believes people need a brain or else we would end up like SRL. Sorry man. I could be wrong.Thing is I think that wanted wants to get away from being like SRL with "easy" type in scripts pretty much premade which made SRL turn to crap... the code turned into crap and the community got dumb because of it.... Notice their code which is 10000 months old and outdated... its because of includes like what UBeX and this magic include is... Wanted may be very strict about the code that goes into OSI, but that doesn't mean he doesn't appreciate input, just look at Smithing.scar, it contains code written by Bixby because he wrote an include file just like shadow did, but for smithing. The code may need some tweaking, but that doesn't mean it isn't suited for OSI... I'll leave it up to Wanted to decide that of course. Quote Link to comment Share on other sites More sharing options...
shadowrecon Posted January 31, 2012 Author Share Posted January 31, 2012 Wanted may be very strict about the code that goes into OSI, but that doesn't mean he doesn't appreciate input, just look at Smithing.scar, it contains code written by Bixby because he wrote an include file just like shadow did, but for smithing. The code may need some tweaking, but that doesn't mean it isn't suited for OSI... I'll leave it up to Wanted to decide that of course. This code could use maybe a little tweaking, i tried to cover all the fail-safes, and make sure everything works right. and as of now its been working great. i ran all of the spells through a loop to make sure they detected that the spells weren't that then went back and tried about 30 spells to make sure ti clicked them right. It also, dont touch the sorting tabs at the bottom if there in the correct position on clicks if they arnt in the right position. Anywho we will see what he says. Just trying to help. Quote Link to comment Share on other sites More sharing options...
Wanted Posted February 1, 2012 Share Posted February 1, 2012 I'm glad that you're trying to help, and your code continues to progressively improve quite significantly (both you and rsutton). Unfortunately I can't just add this "as-is" to OSI for a number of reasons obviously, consistency with the rest of OSI, quality assurance etc. I have to look over any code that is not contributed by an OSI Developer and make adjustments where necessary. It's the only way to ensure and keep OSI to the high standards we aspire for. I'm sure there is plenty of useful code and information in your suggested include file, but I am also sure there is plenty of things that require adjustment of some kind. After all, OSI needs to accommodate the most intensive and skilled scripter writing a Soul Wars Bot just as much as the beginner making his first enchanter. I'm stressed for time and may not get to this for a while, but when I do, I look forward to critiquing this and utilizing what I can while giving you useful feedback that will benefit everyone in the long run. Quote Link to comment Share on other sites More sharing options...
shadowrecon Posted February 1, 2012 Author Share Posted February 1, 2012 I'm glad that you're trying to help, and your code continues to progressively improve quite significantly (both you and rsutton). Unfortunately I can't just add this "as-is" to OSI for a number of reasons obviously, consistency with the rest of OSI, quality assurance etc. I have to look over any code that is not contributed by an OSI Developer and make adjustments where necessary. It's the only way to ensure and keep OSI to the high standards we aspire for. I'm sure there is plenty of useful code and information in your suggested include file, but I am also sure there is plenty of things that require adjustment of some kind. After all, OSI needs to accommodate the most intensive and skilled scripter writing a Soul Wars Bot just as much as the beginner making his first enchanter. I'm stressed for time and may not get to this for a while, but when I do, I look forward to critiquing this and utilizing what I can while giving you useful feedback that will benefit everyone in the long run. Thanks For the Response, I noticed some little things that could be changed and by the time you get around to looking at it i will prob have it completely remade, but it seems to progress as i work on it, and im trying to add as many fail-safes as possible with-out adding to many computations. Thanks Again. =) Quote Link to comment Share on other sites More sharing options...
rsutton Posted February 1, 2012 Share Posted February 1, 2012 I think the biggest thing and difference between our scripts and wanteds are that wanted goes back tot he source of the coding and we write on top of coding which is already on top. So when he says he has to integrate it correctly. He means tear it apart, give it a whole new make over... which actually looks NOTHING like the code we would of wrote lol. Quote Link to comment Share on other sites More sharing options...
Wanted Posted February 2, 2012 Share Posted February 2, 2012 I think the biggest thing and difference between our scripts and wanteds are that wanted goes back tot he source of the coding and we write on top of coding which is already on top. So when he says he has to integrate it correctly. He means tear it apart, give it a whole new make over... which actually looks NOTHING like the code we would of wrote lol. Possibly, but once you learn to script as quickly as I do, you notice that somewhere around half the work is information gathering and data collection. Quote Link to comment Share on other sites More sharing options...
shadowrecon Posted February 2, 2012 Author Share Posted February 2, 2012 Possibly, but once you learn to script as quickly as I do, you notice that somewhere around half the work is information gathering and data collection. This is very true, as i spent a hour or so getting all the boxs for the spells.. the new version of this include im working on works alot better i broke the cast spell down into more peaces but still left a simple castspell function if you just needed to cast one spell. im working on it tho. =p Quote Link to comment Share on other sites More sharing options...
Wanted Posted February 3, 2012 Share Posted February 3, 2012 This is very true, as i spent a hour or so getting all the boxs for the spells You'll also learn there is usually a pattern algorithm for most of things =P Quote Link to comment Share on other sites More sharing options...
shadowrecon Posted February 3, 2012 Author Share Posted February 3, 2012 You'll also learn there is usually a pattern algorithm for most of things =P yeah this i figured out after is pent all the time getting the data, the magic bots are 15x15, so i should of prob made a for loop or something to create the boxes instead of manually entering all of the boxs.. gah.. lol I keep trying to use different things and make procedures more productive. ever since ive learned tpa's, i have came to really like them especially for finding colors, as they can find the colors in like a 1/10th of a second which is good compared to the findcolor(x,y ect.. =) Quote Link to comment Share on other sites More sharing options...