Warning: Undefined variable $http_response_header in /var/www/html/new/skunity/library/skUnity/Util/HTTP.php on line 95

skills.sk

Created by soyofsoys

Just so you know, we don't know the file format for every file. If it's just a bunch of random characters, it's probably a .zip or .jar.

# rpg skills
# soyofsoys


#---------------MAKE SURE YOU DEOP!!-------------

options:
   SCRPG: &5[SC&dRPG&5]
   SKILL: &5[&dSKILLS&5]&f

   
#variables:
    #blade skills
    #{luckysword}: 1 #50% chance at extra 10% damage
    #{bleedout}: 10 #make enemies bleed for 5 seconds
    #{beserker}: 25 # insta kill mobs (not bosses) for 5 seconds
    
    #knight skills
    #{tanker}: 1 #divides damage from entities in half
    #{push}: 10 #pushes back all enemies in a 15 block radius
    #{stomp}: 25 #jump and land causing aoe damage

    #acro sckills
    #{critstrike}: 1 #10% chance at causing 50% damage
    #{invis}: 10 #invisibilty for 10 seconds
    #{freeze}: 25 #stuns the target for 10 seconds
    
    #mage skills
    #{frost}: 1 #shoot snowballs , slow but damaging. 25% damge per hit
    #{fireball}: 10 #shoots fireballs, same as snoballs but sets victim on fire
   
command /skill <text>:
    usage: /skill <help> <list> <off> <check> <skillname>
    trigger:
        if {rank.%player%} is "nub":
            send "{@SKILL} &fYou cannot use this yet."
            stop
        if arg 1 is not "help" or "list" or "off" or "check" or "luckysword" or "bleed" or "tanker" or "push" or "crit" or "rapid" or "freeze" or "heal" or "reflect" or "resist" or "blink" or "invisible":
            send "{@SKILL} Incorrect usage, type /skill help"
            stop
        if arg 1 is "help":
            send "{@SKILL} &6------&lHELP&6------"
            send "{@SKILL} &7/skill help &f- This help page."
            send "{@SKILL} &7/skill list &f- Lists available skills."
            send "{@SKILL} &7/skill off &f- Turns off your skill."
            send "{@SKILL} &7/skill check &f - Checks which skill is active."
            send "{@SKILL} &7/skill <skillname> &f- Choose a skill from the list."
            send "{@SKILL} Some skills may require a right click to activate."
            stop
        if arg 1 is "off":
            clear {active.skill.%player%}
            send "{@SKILL} Your skill has been disabled."
            send "{@SKILL} Select a skill to enable it."
            stop
        if arg 1 is "check":
            send "{@SKILL} &fCurrent Active skill;"
            send "{@SKILL} &7%{active.skill.%player%}%"
            stop
            
        if arg 1 is "list":
            send "{@SKILL} &6------&lLIST&6------"
            
            #blade list
            if player has permission "blade1.skript":
                if {level.%player%} is greater than or equal to 1:
                    send "{@SKILL} &fLVL 1:&7LuckySword: &f50%% chance at extra 10%% damage"
                if {level.%player%} is greater than or equal to 10:
                    send "{@SKILL} &fLVL 10:&7Bleed: &fDamage Enemies for 5 seconds after hit"
                if {level.%player%} is greater than or equal to 20:
                    send "{@SKILL} &fLVL 20:&7Reflect: &f75%% Chance to shield a projectile."
                    
            #knight list
            if player has permission "knight1.skript":
                if {level.%player%} is greater than or equal to 1:
                    send "{@SKILL} &fLVL 1:&7Tanker: &fReduces Damage taken by 10%%"
                if {level.%player%} is greater than or equal to 10:
                    send "{@SKILL} &fLVL 10&7Push: &fPush surrounding mobs back"
                if {level.%player%} is greater than or equal to 20:
                    send "{@SKILL} &fLVL 20&7Resist: &f80%% Chance projectiles have no effect."
                    
            #acrobat list
            if player has permission "acrobat1.skript":
                if {level.%player%} is greater than or equal to 1:
                    send "{@SKILL} &fLVL 1:&7Crit: &f25%% chance at 50%% extra damage"
                if {level.%player%} is greater than or equal to 10:
                    send "{@SKILL} &fLVL 10:&7Rapid: &fHold for rapid fire arrows"
                if {level.%player%} is greater than or equal to 20:
                    send "{@SKILL} &fLVL 20:&7Invisible: &fBecome vanished."
                    
            #mage list
            if player has permission "mage1.skript":
                if {level.%player%} is greater than or equal to 1:
                    send "{@SKILL} &fLVL 1:&7Freeze: &fFreeze your enemies"
                if {level.%player%} is greater than or equal to 10:
                    send "{@SKILL} &fLVL 10:&7Heal: &fHeal your allies."
                if {level.%player%} is greater than or equal to 20:
                    send "{@SKILL} &fLVL 20:&7Blink: &fMini teleport."
    

        #blade select
        if player has permission "blade1.skript":
            if arg 1 is "luckysword":
                if {level.%player%} is greater than or equal to 1:
                    set {active.skill.%player%} to "luckysword"
                    send "{@SKILL} &7LuckySword &fSelected"
                    #send "{@SKILL} Right Click to activate"
                    stop
                else:
                    send "{@SKILL} You cannot use that."
                    stop
            if arg 1 is "bleed":
                if {level.%player%} is greater than or equal to 10:
                    set {active.skill.%player%} to "bleed"
                    send "{@SKILL} &7Bleed &fSelected"
                    stop
                else:
                    send "{@SKILL} You cannot use this yet."
                    stop
            if arg 1 is "reflect":
                if {level.%player%} is greater than or equal to 20:
                    set {active.skill.%player%} to "reflect"
                    send "{@SKILL} &7Reflect &fSelected"
                    stop
                else:
                    send "{@SKILL} You cannot use this yet."
                    stop
        
        #knight select
        if player has permission "knight1.skript":
            if arg 1 is "tanker":
                if {level.%player%} is greater than or equal to 1:
                    set {active.skill.%player%} to "tanker"
                    send "{@SKILL} &7Tanker &fSelected"
                    stop
                else:
                    send "{@SKILL} You cannot use that."
                    stop
            if arg 1 is "push":
                if {level.%player%} is greater than or equal to 10:
                    set {active.skill.%player%} to "push"
                    send "{@SKILL} &7Push &fSelected"
                    send "{@SKILL} Right Click to activate."
                    stop
                else:
                    send "{@SKILL} You cannot use this yet."
            if arg 1 is "resist":
                if {level.%player%} is greater than or equal to 20:
                    set {active.skill.%player%} to "resist"
                    send "{@SKILL} &7Resist &fSelected"
                    stop
                else:
                    send "{@SKILL} You cannot use this yet."
                    
        #acrobat select:       
        if player has permission "acrobat1.skript":
            if arg 1 is "crit":
                if {level.%player%} is greater than or equal to 1:               
                    set {active.skill.%player%} to "crit"
                    send "{@SKILL} &7Crit &fSelected"
                    stop
                else:
                    send "{@SKILL} You cannot use that."
                    stop
            if arg 1 is "rapid":
                if {level.%player%} is greater than or equal to 10:
                    set {active.skill.%player%} to "rapid"
                    send "{@SKILL} &7Rapid &fSelected"
                    stop
                else:
                    send "{@SKILL} You cannot use this yet."
                    stop
            if arg 1 is "invisible":
                if {level.%player%} is greater than or equal to 20:
                    set {active.skill.%player%} to "invisible"
                    send "{@SKILL} &7Invisible &fSelected"
                    send "{@SKILL} &fLeft Click to activate."
                    stop
                else:
                    send "{@SKILL} You cannot use this yet."
                    stop
                    
        #mage select
        if player has permission "mage1.skript":
            if arg 1 is "freeze":
                if {level.%player%} is greater than or equal to 1:
                    set {active.skill.%player%} to "freeze"
                    send "{@SKILL} &7Freeze &f Selected"
                    stop
                else:
                    send "{@SKILL} You cannot use that."
                    stop
            if arg 1 is "heal":
                if {level.%player%} is greater than or equal to 10:
                    set {active.skill.%player%} to "heal"
                    send "{@SKILL} &7Heal &fSelected"
                    send "{@SKILL} &fRight Click to activate."
                    stop
                else:
                    send "{@SKILL} You cannot use this yet."
                    stop
            if arg 1 is "blink":
                if {level.%player%} is greater than or equal to 20:
                    set {active.skill.%player%} to "blink"
                    send "{@SKILL} &7Blink &fSelected"
                    send "{@SKILL} &fRight Click to activate."
                    stop
                else:
                    send "{@SKILL} You cannot use this yet."
                    stop
                    
            
   
#weapon restrictions
on damage:
    victim is a living entity
    attacker is a player
    if attacker has permission "acrobat1.skript":
        if attacker is not holding a bow or air:
            cancel event          
    if attacker has permission "blade1.skript":
        if attacker is not holding a sword or air:
            cancel event  
    if attacker has permission "knight1.skript":
        if attacker is not holding an axe or air:
            cancel event          
    if attacker has permission "mage1.skript":
        if attacker is not holding a stick or air:
            cancel event
    if attacker has permission "class.nub":
        cancel event
        send "{@SCRPG} &fPlease see a Class Master first."
        stop
       
on rightclick with bow:
    player does not have permission "acrobat1.skript"
    send "{@SCRPG} You are not an Acrobat."
    cancel event
        
       
#item level and usage, as well as dmage modifiers per weapon level, hopefully AND STATS
on damage:
    victim is a living entity
    if attacker is a player:
        if victim is a player:
            if victim is in "scrpg" or "w1" or "w2" or "w3" or "w4" or "w5" or "w6":
                stop
        attacker is holding a bow or sword or axe or stick
        set {_leveluselore::*} to lore of attacker's tool split by "||"
        set {_leveluse::*} to {_leveluselore::1} split by " "
        set {_toollevel} to {_leveluse::2} parsed as an integer
        
        set {_strcheck::*} to {_leveluselore::2} split by "+"
        set {_str} to {_strcheck::2} parsed as an integer
        #send "%{_str}%" to attacker
        
        set {_dexcheck::*} to {_leveluselore::3} split by "+"
        set {_dex} to {_dexcheck::2} parsed as an integer
        #send "%{_dex}%" to attacker
        
        set {_intcheck::*} to {_leveluselore::4} split by "+"
        set {_int} to {_intcheck::2} parsed as an integer
        #send "%{_int}%" to attacker
        
        set {_stacheck::*} to {_leveluselore::5} split by "+"     #defense only, not needed.
        set {_sta} to {_stacheck::2} parsed as an integer
       # send "%{_sta}%" to attacker
        
        set {_attack} to {_str}*0.15
        set {_critical} to {_str}*0.15
        set {_magic} to {_int}*0.75
        set {_defense} to {_sta}*0.25                            #for defense only not needed here.

        
        set {_damage} to damage
        if victim is a creature:          
            set {_moblevel} to name of victim
            set {_var::*} to {_moblevel} split at " "
            set {_moblevel} to {_var::2} parsed as an integer
            
            if name of victim is "&7Wolf&6King":                   #boss
                set {_moblevel} to 20
                
        if victim is a player:
            set {_moblevel} to {level.%victim%}
        if {_toollevel} is less than or equal to {level.%attacker%}:      
            #send "before %{_damage}%" to attacker
            if attacker has permission "blade1.skript":
                attacker is holding a sword
                add ({_toollevel}*0.9)+{_attack} to {_damage}
                if {active.skill.%attacker%} is "luckysword":
                    chance of 50%:
                        add 10% to {_damage}
                        play smoke at block above victim
               
            if attacker has permission "knight1.skript":
                add ({_toollevel}*0.55)+{_attack} to {_damage}
            if attacker has permission "mage1.skript":
                if damage cause is a projectile:
                    set {_damage} to (0.5*({_toollevel}*2.25)+{_magic})+{level.%attacker%}/(1+{_moblevel})
                    #add ({_toollevel}*2.25)+{_magic} to {_damage}
                    #send "damage %{_damage}%" to attacker
                else:
                    cancel event
                    stop
            if attacker has permission "acrobat1.skript":
                if damage cause is a projectile:
                    add ({_toollevel}*0.65)+{_critical} to {_damage}
                    if {active.skill.%attacker%} is "crit":
                        chance of 25%:
                            add 50% to {_damage}
                            play mobspawner flames at victim                         
            set damage to {_damage}
            #send "Damage:%{_damage}%" to attacker
            chance of 50%:
                remove 2.0 from the durability of the attacker's tool
                if the attacker's tool is an axe:
                    remove 2.0 from the durability of the attacker's tool
            stop
        if {_toollevel} is greater than {level.%attacker%}:
            cancel event
            send "{@SCRPG} You cannot use that item yet" to attacker
            stop
        else:
            cancel event
            send "{@SCRPG} This item is not useable" to attacker
        
#damage to players per mob level
    if attacker is not a player:
        victim is holding a bow or sword or axe or stick
        
        if damage cause is a projectile:
            if attacker is a creature or a player:
                if {active.skill.%victim%} is "reflect":
                    chance of 75%:
                        cancel event
                        stop
        
        set {_leveluselore::*} to lore of victim's tool split by "||"
        set {_stacheck::*} to {_leveluselore::5} split by "+"     #defense only
        set {_sta} to {_stacheck::2} parsed as an integer
        
        set {_defense} to {_sta}*0.25 
        
        set {_moblevel} to "%name of attacker%"
        set {_var::*} to {_moblevel} split at " "
        set {_mobdamage} to {_var::2} parsed as an integer
        
        if name of attacker is "&7Wolf&6King":                 #boss
            set {_mobdamage} to 20
            
        if {_mobdamage} is not an integer:
            stop
        else:       
            set {_overall} to 1*{_mobdamage}/(1+{level.%victim%})
            if victim has permission "blade1.skript":
                subtract 1% from {_overall}
                subtract {_defense} from {_overall}
                #send "after percentage %{_overall}%" to victim
            if victim has permission "knight1.skript":
                if {active.skill.%victim%} is "resist":
                    if damage cause is a projectile:
                        chance of 80%:
                            cancel event
                subtract 5% from {_overall}
                subtract {_defense} from {_overall}
                if {active.skill.%victim%} is "tanker":
                    subtract 10% from {_overall}
            if victim has permission "acrobat1.skript":
                add 3% to {_overall}
                subtract {_defense} from {_overall}
            if victim has permission "mage1.skript":
                add 6% to {_overall}
                subtract {_defense} from {_overall}
            if {_overall} <= 0:
                set {_overall} to 0.01          
            #send "damage %{_overall}%" to victim 
            set damage to {_overall}
            stop

on damage:
    attacker is holding a sword
    attacker is a player
    victim is a living entity
    if victim is a player:
        if world is "scrpg" or "w1" or "w2" or "w3" or "w4" or "w5" or "w6":
            stop
    if {active.skill.%attacker%} is "bleed":
        loop 5 times:
            damage the victim by 0.5 hearts
            if victim is dead:
                stop
            play smoke at block above victim
            wait 1 second
        stop
        
on right click:
    player is holding a bow
    if {active.skill.%player%} is "rapid": #acro
        loop 2 times:
            if player does not have 1 arrow:
                send "{@SCRPG} &fOut of Arrows."
                stop
            else:              
                make player shoot an arrow at speed 5
                remove 1 arrow from player
    
        
#cancel bow damage from left click  
on damage:
    attacker is holding a bow       
    if damage cause is not a projectile:
        if attacker has permission "acrobat1.skript":
            if victim is a creature:
                if attacker is in "w1" or "w2" or "w3" or "w4" or "w5" or "w6":                            
                    push victim upwards at speed 0.5
                    push victim backwards at speed 5                   
                    apply potion of slowness 5 to the victim for 5 seconds           
            if victim is a player:
                if attacker is in "arena":
                    if difference of {slowacro.%attacker%} and now is less than 10 seconds:
                        send "{@SKILL} &fPlease wait for cooldown." to attacker
                        cancel event
                        stop
                    else:
                        send "{@SCRPG} &fVictim Slowed" to attacker
                        push victim upwards at speed 0.5
                        push victim backwards at speed 5
                       
                        apply potion of slowness 5 to the victim for 2 seconds
                        set {slowacro.%attacker%} to now
                        cancel event                   
        else:
            cancel event
            
#invis skill - acro
on left click:
    player is holding a bow
    player has permission "acrobat1.skript"
    if {active.skill.%player%} is "invisible":
        if difference of {invis.%player%} and now is less than 15 seconds:
            send "{@SKILL} &fPlease wait for cooldown."
            stop
        else:
            hide player from all players
            apply potion of invisibility to player for 10 seconds
            set {invis.%player%} to now
            loop entities in radius 20 around player:
                loop-entity is a creature
                if loop-entity's target is the player:
                    apply slowness 10 to the loop-entity for 5 seconds
                    clear loop-entity's target
            send "{@SKILL} &7Vanished"
            wait 10 seconds
            reveal player from all players
            remove potion of invisibility from player
            send "{@SKILL} &7Revealed"
            
            
#wand usage          
on left click:
    player is holding a stick
    if world is "scrpg" or "w1" or "w2" or "w3" or "w4" or "w5" or "w6":
        if target is a creature:
            player has permission "mage1.skript"
            set {_wand} to the name of the player's tool
            set {_var::*} to {_wand} split at " "
            if {_var::3} is "Wand":
                if player does not have 1 eye of ender named "&6Magic":
                    send "{@SCRPG} &fYou need more &6Magic"
                    stop
                else:
                    if {level.%player%} is less than 51:
                        shoot a snowball at speed 3
                        remove 1 eye of ender named "&6Magic" from the player's inventory
                        chance of 50%:
                            damage the target entity by 0.5 hearts
                    if {level.%player%} is between 51 and 200:
                        shoot a fireball at speed 3
                        set {_location} to the target's location
                        wait 1 second
                        loop blocks in radius 7 around {_location}:
                            if loop-block is fire:
                                wait 1 tick
                                set loop-block to air
                        remove 1 eye of ender named "&6Magic" from the player's inventory
                        chance of 50%:
                            damage the target entity by 0.25 hearts                   
            if {active.skill.%player%} is "freeze":
                player's target is a living entity
                if the player's target does not have slowness:
                    play ender signal at the targeted entity
                    apply slowness 6 to the targeted entity for 2 seconds
                    play raw sound "mob.wither.shoot" at player with pitch 5 volume 2
                    
on right click:
    player is holding a eye of ender named "&6Magic"
    cancel event
    if clicked block is a sign:
        stop
    send "{@SCRPG} &fThis is &6Magic &ffor Mage Class."
    stop
            
on rightclick on sign: #BUY MAGIC
    first line of clicked block is "&6[Buy]"
    second line of clicked block is "&6Magic"
    third line of clicked block is "&6eyes"
    if player can hold 64 eye of ender:
        if the player's money is less than or equal to 100:
            send "{@SCRPG} &fYou cannot afford &6Magic &fright now"
            stop
        else:
            remove 100 from the player's money
            give 64 eye of ender named "&6Magic" to the player
            #set the itemstack's name to "&6Magic"
            send "{@SCRPG} &fThank you for your purchase"
            stop
    else:
        send "{@SCRPG} &fYou do not have enough room"
        stop
     
on rightclick on sign: #SELL
    first line of clicked block is "&6[Sell]"
    second line of clicked block is "&6Magic"
    third line of clicked block is "&6eyes"
    if player has 32 eye of ender named "&6Magic":
        remove 32 eye of ender named "&6Magic" from the player's inventory
        add 10 to the player's money
        send "{@SCRPG} &6Magic &fSold."
        stop
    else:
        send "{@SCRPG} &fYou need atleast 32 &6Magic&f."
        stop     
     
     
on shoot:
    shooter has permission "mage1.skript"
    if projectile is a snowball:
        trail projectile with particle mob spell     
        
on right click: #mage heal skill
    player is holding a stick
    if player has permission "mage1.skript":
        if {active.skill.%player%} is "heal": 
            if difference of {healed.%player%} and now is less than 20 seconds:
                send "{@SKILL} &fPlease wait for cooldown."
                stop
            else: 
                set {_player} to the player
                loop players in radius 10 around {_player}:
                    if loop-player is not {_player}: 
                        apply health 2 to loop-players for 5 seconds
                        send "{@SKILL} You have been healed by &6%player%" to loop-player
                        play ender signal at the loop-player
                        set {healed.%player%} to now
                        set {_healme} to true
                if {_healme} is set:
                    send "{@SKILL} &fHealing nearby players." to player
                else:
                    send "{@SKILL} &fNo one here to heal."
        if {active.skill.%player%} is "blink":
            if difference of {blink.%player%} and now is less than 5 seconds:
                send "{@SKILL} &fPlease wait for cooldown."
            else:
                if player has 1 eye of ender named "&6Magic":
                    #send "hi soil"
                    if target block is leaves:
                        #send "no, leaves"
                        stop
                    set {_target} to location of targeted block
                    wait 1 second
                    if distance between the player and {_target} is greater than 45:
                        #send "no, too far"
                        stop
                    teleport the player to block above {_target}
                    play ender signal at the player                    
                    set {blink.%player%} to now
                    remove 1 eye of ender named "&6Magic" from the player
                    send "{@SKILL} &7Blink."
                else:
                    send "{@SKILL} &fNot enough &6Magic"
                    stop
                   
on logout:
    if player has permission "mage1.skript":
        delete {healed.%player%}
        delete {blink.%player%}
    if player has permission "acrobat1.skript":
        delete {slowacro.%player%}
        delete {invis.%player%}
      
on login:
    if player has permission "acrobat1.skript":
        reveal player from all players
    
    
#knight push skill
on rightclick:
    player is holding an axe
    player has permission "knight1.skript"
    if {active.skill.%player%} is "push":
        push creatures in radius 5 of player backwards at speed 2
        play ender signal at the block above the player
        send "{@SKILL} Fus-Ro-Soy!"