YASSE Hitbasic (script)
YASSE Hitbasic (script) | |
---|---|
Category | combat |
Front-end | YASSE |
Author | Hithrael |
Description
This is part of the YASSE Combat Package.
Syntax
Run as .scriptname <skinning override>, where the <skinning override> is left blank if you want to use your global settings for skinning, or as change if you want to either skin or not skin. (e.g. if your global variable is set to "yes" and you run the script as .hit change, it will temporarily change the script to avoid skinning. The next time script is run, if run normally, it will skin)
At any time (excepting when the script is skinning or looting), you can enter into the command prompt "changing weapons", where the script will pause for ten seconds to allow you to change weapons, and then go to the start prompt (selecting what fighting style) where the script will pause until a new style is selected. This will allow setting like the skinning change and amount of arrangement to retain their localized settings.
Updates
Last Updated:
- 03/30/2011: Revision 2
- Improved skinning support
- Faster flow
- Better support for shields
- NOTE: The script does not play well with weapons of the same shortname (e.g. battle axe versus hand axe) at this time. The script will not hang, but you may find yourself training HE instead of ME if weapons have the same shortname.
- Changes made for better ranged support in the future
- 03/14/2011: Revision 1.1b, fixed crossbow functionality which caused skinning bug
- 03/14/2011: Revision 1.1, added basic thrown support. Ranged functionality exists, but poorly.
- 11/20/2010: Revision 1.0
Script
set predefined on #Add more messaging #Search for the above language to find points in the script were more language is needed. #Action calls action [There is nothing else to face!] gosub foewait2 action [At what are you trying to] gosub foewait1 action [You aren't close enough to attack] gosub foewait2 action [But you are already dodging!] put parry action [You are already in a position to parry.] put dodge action [To whom are you speaking?] goto end action [What are you trying to throw?] goto thrown2 action [changing weapons] goto weaponchange #Action calls for combat/critter death #Add more messaging action [lifeless mound] gosub loot action [collapses to the ground] gosub loot action [then grows still] gosub loot action [grows limp and seems to deflate] gosub loot action [before collapsing] gosub loot action [stops all movement] gosub loot action [body explodes into a gaseous cloud] gosub loot action [rebellious flame dies out] gosub loot action [and lies still] gosub loot action [then lies still] gosub loot action [then goes limp] gosub loot #Local settings setvariable bunglearrange no if %1 contains change gosub overrideskin pause #Weapons portion setup: pause boxmessage Enter fighting style now. \nClasses include: \n Blunt, Edged, lightedged, thrustedged, Pike, Halberd, Quarterstaff, Shortstaff, Thrown, and Ranged getline pause boxmessage Fighting style is: %l if %l eq ranged setglobalvariable rangedhunting yes else setglobalvariable rangedhunting no setvariable huntingweapontemp [%righthanditem] getword -1 $huntingweapontemp$ boxmessage %w setglobalvariable huntingweapon %w if %l eq thrown setvariable thrownweapon %w put glance goto %l #THROWN WEAPONS thrown: pause put throw waitfor roundtime thrown2: put get $thrownweapon$ pause goto thrown #RANGED WEAPONS ranged: pause match ranged2 already loaded put load matchwait $loadwait$ ranged2: pause put aim waitfor You think you have your best shot possible now. put fire pause goto ranged #BLUNT WEAPONS blunt: pause put feint waitfor roundtime pause put bash waitfor roundtime pause put sweep waitfor roundtime pause put draw waitfor roundtime pause put swing waitfor roundtime pause put dodge waitfor roundtime pause goto blunt #EDGED WEAPONS lightedged: pause put feint waitfor roundtime pause put draw waitfor roundtime pause put slice waitfor roundtime pause put chop waitfor roundtime pause put dodge waitfor roundtime pause goto lightedged edged: pause put feint waitfor roundtime pause put draw waitfor roundtime pause put sweep waitfor roundtime pause put slice waitfor roundtime pause put chop waitfor roundtime pause put parry waitfor roundtime pause goto edged thrustedged: pause put feint waitfor roundtime pause put lunge waitfor roundtime pause put thrust waitfor roundtime pause put jab waitfor roundtime pause put slam waitfor roundtime pause put parry waitfor roundtime pause goto thrustedged #POLE WEAPONS halberd: pause put feint waitfor roundtime pause put draw waitfor roundtime pause put slice waitfor roundtime pause put thrust waitfor roundtime pause put sweep waitfor roundtime pause put chop waitfor roundtime pause goto halberd pike: pause put dodge waitfor roundtime pause put jab waitfor roundtime pause put sweep waitfor roundtime pause put thrust waitfor roundtime pause put lunge waitfor roundtime pause goto pike #STAFF WEAPONS quarterstaff: pause put feint waitfor roundtime pause put draw waitfor roundtime pause put swing waitfor roundtime pause put thrust waitfor roundtime pause put sweep waitfor roundtime pause put chop waitfor roundtime pause goto quarterstaff shortstaff: pause put feint waitfor roundtime pause put draw waitfor roundtime pause put slice waitfor roundtime pause put parry waitfor roundtime pause put thrust waitfor roundtime pause put chop waitfor roundtime pause goto shortstaff #Action Call Scripts loot: pause put look nextroom skin: if $bunglearrange$ eq yes begin setglobalvariable arrangenumber 0 goto skincontinue end if $skincheck$ eq no goto lootstuff pause match lootstuff cannot be skinned match arrangestop worthless now match arrangestop not to damage put arrange matchwait 04 goto skincontinue arrangestop: pause setvariable bunglearrange yes boxmessage Skinning is so difficult, arrange attempts are being skipped. goto lootstuff skincontinue: if %youalsosee contains dead begin call skin pause end lootstuff: if $skincheck$ eq no put sheath my $huntingweapon$ call loot pause if $rangedhunting$ eq no put wield my $huntingweapon$ else put remove my $huntingweapon$ pause return foewait1: pause pausetext 60 [melee range] pause return foewait2: waitfor melee range pause return weaponchange: boxmessage Pausing for 10 seconds to change fighting style. \nThen follow prompt. pause 10 goto setup overrideskin: boxmessage Overriding normal skinning process. if $skincheck$ eq yes setvariable skincheck no else setvariable skincheck yes return end: exit