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!

  2. LOOKING FOR A VERSION OF SKRIPT?

    You can always check out our Wiki for downloads and any other information about Skript!

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

/promote <player> [<arg 2>]

Discussion in 'Skript' started by FusionCore, Apr 21, 2020.

Thread Status:
Not open for further replies.
  1. FusionCore

    Supporter

    Joined:
    Apr 19, 2020
    Messages:
    44
    Likes Received:
    1
    command /promote [<player>] [<arg 2>]:
    permission: op
    trigger:
    player is set:
    arg 1 is set:
    arg 2 is set:
    if arg 2 is "default":
    if {default::*} contains %arg 1%'s uuid:
    send "&b%arg 1% already has this rank!" to player
    if {default::*} does not contain %arg 1%'s uuid:
    add %arg 1%'s uuid to {default::*}
    execute player command "resetchatformatting %arg 1%"
    if arg 2 is "builder":
    if {builder::*} contains %arg 1%'s uuid:
    send "&b%arg 1% already has this rank!" to player
    if {builder::*} does not contain %arg 1%'s uuid:
    add %arg 1%'s uuid to {builder::*}
    execute player command "resetchatformatting %arg 1%"
    if arg 2 is "developer":
    if {developer::*} contains %arg 1%'s uuid:
    send "&b%arg 1% already has this rank!" to player
    if {developer::*} does not contain %arg 1%'s uuid:
    add %arg 1%'s uuid to {developer::*}
    execute player command "resetchatformatting %arg 1%"
    if arg 2 is "admin":
    if {admin::*} contains %arg 1%'s uuid:
    send "&b%arg 1% already has this rank!" to player
    if {admin::*} does not contain %arg 1%'s uuid:
    add %arg 1%'s uuid to {admin::*}
    execute player command "resetchatformatting %arg 1%"
    if arg 2 is "coowner":
    if {coowner::*} contains %arg 1%'s uuid:
    send "&b%arg 1% already has this rank!" to player
    if {coowner::*} does not contain %arg 1%'s uuid:
    add %arg 1%'s uuid to {coowner::*}
    execute player command "resetchatformatting %arg 1%"
    if arg 2 is "owner":
    if {owner::*} contains %arg 1%'s uuid:
    send "&b%arg 1% already has this rank!" to player
    if {owner::*} does not contain %arg 1%'s uuid:
    add %arg 1%'s uuid to {owner::*}
    execute player command "resetchatformatting %arg 1%"
    elif:
    send "&7Sorry, you wrote this command wrong. Try again!" player
    command /resetchatformatting [<player>]:
    permission: op
    trigger:
    arg 1 is set:
    if {default::*} contains %arg 1%'s uuid:
    set %arg 1%'s chat format to "&8[&7Default&8] &f%player%&7: &f%message%"
    send "&8[&7Default&8] &f%arg 1%&7: &fHello World" to player
    if {builder::*} contains %arg 1%'s uuid:
    set %arg 1%'s chat format to "&7[&aBuilder&7] &f%player%&7: &f%message%"
    send "&7[&aBuilder&7] &f%arg 1%&7: &fHello World" to player
    if {developer::*} contains %arg 1%'s uuid:
    set %arg 1%'s chat format to "&7[&bDeveloper&7] &f%player%&7: &f%message%"
    send "&7[&bDeveloper&7] &f%arg 1%&7: &fHello World" to player
    if {admin::*} contains %arg 1%'s uuid:
    set %arg 1%'s chat format to "&7[&cAdmin&7] &f%player%&7: &f%message%"
    send "&7[&cAdmin&7] &f%arg 1%&7: &fHello World" to player
    if {coowner::*} contains %arg 1%'s uuid:
    set %arg 1%'s chat format to "&8[&4Co-Owner&8] &f%player%&7: &f%message%"
    send "&7[&4Co-Owner&7] &f%arg 1%&7: &fHello World" to player
    if {owner::*} contains %arg 1%'s uuid:
    set %arg 1%'s chat format to "&8[&4Owner&8] &f%player%&7: &f%message%"
    send "&8[&4Owner&8] &f%arg 1%&7: &fHello World" to player

    Do you know what I'm doing wrong?
     
  2. Dave

    Dave Active Member

    Joined:
    Jul 20, 2018
    Messages:
    228
    Likes Received:
    9
    basically, everything
     
  3. PatoFrango

    PatoFrango Active Member

    Joined:
    Jul 12, 2017
    Messages:
    240
    Likes Received:
    14
    Please format your code
     
  4. Dave

    Dave Active Member

    Joined:
    Jul 20, 2018
    Messages:
    228
    Likes Received:
    9
    I've fixed it.
    Here's the code. I've removed the ''/resetchatformatting'' from ''your code'' because there's no way to set a chat format per player.
    Also, read the doc's, please.
    Code (Text):
    1.  
    2. command /promote [<offline player>] [<text>]:
    3.     permission message: &cNo permissions.
    4.     permission: op
    5.     trigger:
    6.         if arg 1 is set:
    7.             if {uuid.%arg 1%} is set:
    8.                 if arg 2 is set:
    9.                     if arg 2 is "default":
    10.                         if {default::*} contains {uuid.%arg-1%}:
    11.                             send "&b%arg 1% already has this rank!" to player
    12.                         else:
    13.                             remove {uuid.%arg-1%} from {builder::*}
    14.                             remove {uuid.%arg-1%} from {developer::*}
    15.                             remove {uuid.%arg-1%} from {admin::*}
    16.                             remove {uuid.%arg-1%} from {coowner::*}
    17.                             remove {uuid.%arg-1%} from {owner::*}
    18.  
    19.                             add {uuid.%arg-1%} to {default::*}
    20.  
    21.                     else if arg 2 is "builder":
    22.                         if {builder::*} contains {uuid.%arg-1%}:
    23.                             send "&b%arg 1% already has this rank!" to player
    24.                         else:
    25.                             remove {uuid.%arg-1%} from {default::*}
    26.                             remove {uuid.%arg-1%} from {developer::*}
    27.                             remove {uuid.%arg-1%} from {admin::*}
    28.                             remove {uuid.%arg-1%} from {coowner::*}
    29.                             remove {uuid.%arg-1%} from {owner::*}
    30.  
    31.                             add {uuid.%arg-1%} to {builder::*}
    32.  
    33.                     else if arg 2 is "developer":
    34.                         if {developer::*} contains {uuid.%arg-1%}:
    35.                             send "&b%arg 1% already has this rank!" to player
    36.                         else:
    37.                             remove {uuid.%arg-1%} from {default::*}
    38.                             remove {uuid.%arg-1%} from {builder::*}
    39.                             remove {uuid.%arg-1%} from {admin::*}
    40.                             remove {uuid.%arg-1%} from {coowner::*}
    41.                             remove {uuid.%arg-1%} from {owner::*}
    42.  
    43.                             add {uuid.%arg-1%} to {developer::*}
    44.  
    45.                     else if arg 2 is "admin":
    46.                         if {admin::*} contains {uuid.%arg-1%}:
    47.                             send "&b%arg 1% already has this rank!" to player
    48.                         else:
    49.                             remove {uuid.%arg-1%} from {default::*}
    50.                             remove {uuid.%arg-1%} from {builder::*}
    51.                             remove {uuid.%arg-1%} from {developer::*}
    52.                             remove {uuid.%arg-1%} from {coowner::*}
    53.                             remove {uuid.%arg-1%} from {owner::*}
    54.  
    55.                             add {uuid.%arg-1%} to {admin::*}
    56.  
    57.                     else if arg 2 is "coowner":
    58.                         if {coowner::*} contains {uuid.%arg-1%}:
    59.                             send "&b%arg 1% already has this rank!" to player
    60.                         else:
    61.                             remove {uuid.%arg-1%} from {default::*}
    62.                             remove {uuid.%arg-1%} from {builder::*}
    63.                             remove {uuid.%arg-1%} from {developer::*}
    64.                             remove {uuid.%arg-1%} from {admin::*}
    65.                             remove {uuid.%arg-1%} from {owner::*}
    66.  
    67.                             add {uuid.%arg-1%} to {coowner::*}
    68.  
    69.                     else if arg 2 is "owner":
    70.                         if {owner::*} contains {uuid.%arg-1%}:
    71.                             send "&b%arg 1% already has this rank!" to player
    72.                         else:
    73.                             remove {uuid.%arg-1%} from {default::*}
    74.                             remove {uuid.%arg-1%} from {builder::*}
    75.                             remove {uuid.%arg-1%} from {developer::*}
    76.                             remove {uuid.%arg-1%} from {admin::*}
    77.                             remove {uuid.%arg-1%} from {coowner::*}
    78.  
    79.                             add {uuid.%arg-1%} to {owner::*}
    80.                     else:
    81.                         send "&7Sorry, you wrote this command wrong. Try again!"
    82.                         send "&7Usage: &c/promote <player> <rank>"
    83.                 else:
    84.                     send "&7Sorry, you wrote this command wrong. Try again!"
    85.                     send "&7Usage: &c/promote <player> <rank>"
    86.             else:
    87.                 send "&cThis player hasn't played on the server."
    88.         else:
    89.             send "&7Sorry, you wrote this command wrong. Try again!"
    90.             send "&7Usage: &c/promote <player> <rank>"
    91.  
    92. on chat:
    93.     cancel event
    94.     loop all players:
    95.         if {default::*} contains {uuid.%sender%}:
    96.             send "&8[&7Default&8] &f%sender%&7: &f%message%" to loop-player
    97.  
    98.         else if {builder::*} contains {uuid.%sender%}:
    99.             send "&7[&aBuilder&7] &f%sender%&7: &f%message%" to loop-player
    100.  
    101.         else if {developer::*} contains {uuid.%sender%}:
    102.             send "&7[&bDeveloper&7] &f%sender%&7: &f%message%" to loop-player
    103.  
    104.         else if {admin::*} contains {uuid.%sender%}:
    105.             send "&7[&cAdmin&7] &f%sender%&7: &f%message%" to loop-player
    106.  
    107.         else if {coowner::*} contains {uuid.%sender%}:
    108.             send "&8[&4Co-Owner&8] &f%sender%&7: &f%message%" to loop-player
    109.  
    110.         else if {owner::*} contains {uuid.%sender%}:
    111.             send "&8[&4Owner&8] &f%sender%&7: &f%message%" to loop-player
    112.  
    113. on join:
    114.     if {uuid.%player%} is not set:
    115.         set {uuid.%player%} to player's uuid
    116.         add {uuid.%player%} to {default::*}
    Proof it works: https://gyazo.com/1712d3b404c4bde0a90908c75fcace9d
     
  5. IDuckz_

    IDuckz_ Active Member

    Joined:
    Jul 25, 2019
    Messages:
    106
    Likes Received:
    2
    Best to make a function for this so the code wont look so long or messy..
     
Thread Status:
Not open for further replies.

Share This Page

Loading...