1. Welcome to skUnity!

    Welcome to skUnity! This is a forum where members of the Skript community can communicate and interact. Skript Resource Creators can post their Resources for all to see and use.

    If you haven't done so already, feel free to join our official Discord server to expand your level of interaction with the comminuty!

    Now, what are you waiting for? Join the community now!

Dismiss Notice
This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.

Script ☯ Essentials A ☯ Alpha 6.0

A simple remake of essentials!

  1. jackYodil

    jackYodil Member

    Joined:
    Jan 28, 2017
    Messages:
    28
    Likes Received:
    5
    jackYodil submitted a new resource:

    ☯ Essentials A ☯ - A simple remake of essentials!

    Read more about this resource...
     
  2. ShaneBee

    Supporter + Addon Developer

    Joined:
    Sep 7, 2017
    Messages:
    2,183
    Likes Received:
    232
    The script you've created is around 1600 lines. This would be fine if it wasn't for the fact that there is a massive (and I mean MASSIVE) amount of useless command duplication. For example, you created a command called /vanish and then created a separate command called /v with exactly the same function. Use aliases, not an extra 20 lines per each command.

    Code (Skript):
    1.  
    2. command /vanish [<player>]:
    3.    aliases: /v
    4.    trigger:
    5.       #do stuff
    6.  
    Not very hard to do ^

    As well as this, you've taken up more space on recreating mechanics that are already done for you in Skript.

    e.g:

    You created a freeze command:
    Code (Skript):
    1. command /freeze [<player>]:
    2.     aliases: /ss
    3.     permission: essentialsa.freeze
    4.     permission message: {@error-prefix} {@no-perms-message}
    5.     trigger:
    6.         if arg-1 is not set:
    7.             message "{@error-prefix}&7 /freeze <player>"
    8.             stop
    9.         if arg-1 is set:
    10.             if arg-1 is command sender:
    11.                 message "{@error-prefix} &7You cannot freeze yourself!"
    12.                 stop
    13.             if {freeze.%arg-1%} is not set:
    14.                 message "{@freeze-prefix} &7You have froze &3%arg-1%&7!"
    15.                 message "{@freeze-prefix} &7You have been frozen!" to arg-1
    16.                 message "{@freeze-prefix} &7Please join TeamSpeak! IP: &3{@Teamspeak}" to arg-1
    17.                 set {freeze.%arg-1%} to location of arg-1
    18.                 stop
    19.             else:
    20.                 message "{@freeze-prefix} &7You have unfroze &3%arg-1%&7!"
    21.                 message "{@freeze-prefix} &7You have been unfrozen!" to arg-1
    22.                 clear {freeze.%arg-1%}
    23.                 stop
    24.  
    25. on any movement:
    26.     if {freeze.%player%} is set:
    27.         teleport player to {freeze.%player%}
    28.         stop
    However, you could've saved more than 10 lines by just using the effect:

    Code (Skript):
    1. set freeze state of player to true
    Finally, you could've used just one variable for this entire script. By using loads of little and randomly named variables (e.g "{freeze.%arg-1%}"), it makes it almost impossible to clean up the script / remove all variables.

    You could've done every single variable in one list variable:

    Code (Skript):
    1. {EssentialsA::freeze::%arg-1%}
    2. {EssentialsA::warps::%arg-1%}
    That way, if I wanted to clean / clear up the script, all I need to do is:

    Code (Skript):
    1. delete {EssentialsA::*}
    All in all, I think you should try doing much smaller projects. It is clear that you do not have a lot of experience in Skript (Not an insult, everyone was there once.). Trying big projects like this often lead to inefficient or broken scripts. I see that you've put a lot of effort into this and I respect that but you should start small and slowly expand upon your Skript knowledge.
     
  3. ShaneBee

    Supporter + Addon Developer

    Joined:
    Sep 7, 2017
    Messages:
    2,183
    Likes Received:
    232

    It's good but aliases won't work essentials will override it.
     
  4. ShaneBee

    Supporter + Addon Developer

    Joined:
    Sep 7, 2017
    Messages:
    2,183
    Likes Received:
    232
    What's the point in downloading an Essentials script and having the Essentials plugin...? Isn't this supposed to replace it?
     
  5. ShaneBee

    Supporter + Addon Developer

    Joined:
    Sep 7, 2017
    Messages:
    2,183
    Likes Received:
    232
    Not replacing it, I would put it as an addon. Sorry for any confusion.
     
  6. ShaneBee

    Supporter + Addon Developer

    Joined:
    Sep 7, 2017
    Messages:
    2,183
    Likes Received:
    232
    But every single command it has is in Essentials, making it a replacer...?
     

Share This Page

Loading...