Jump to content

Having errors with a skript, need help and ty =D


NoPulp

Recommended Posts

6 errors:

Line 6: {queued players} can only ever have one value at most, thus the “amount of…” expression is useless. Use “exist”to find out whether the expression has a value. Line: if size of (queued players is greater than or equal to 4:

Line 20:Cant understand this condition ‘damager is a player and damage is a player’ Line: Cant understand this condition ‘damager is a player and damage is a player:

Line 27: Use attacker and/or victim' in damager death events Line: if player is in (blue team:

Line 33: Use 'attacker' and/or 'victim in damage/death events Line else if player is in red team:

Line 52: Cant understand this event: 'on game start Line: on game start:

Line 40: Cant understand this event: 'on player quit Line: on player quit:

command /queue:
    trigger:
        if player is not in {queued players}:
            add player to {queued players}
            send "You have joined the queue!" to player
            if size of {queued players} is at least 4:
                loop 2 times:
                    set {_randomPlayer} to a random player in {queued players}
                    remove {_randomPlayer} from {queued players}
                    add {_randomPlayer} to {blue team::*}
                loop 2 times:
                    set {_randomPlayer} to a random player in {queued players}
                    remove {_randomPlayer} from {queued players}
                    add {_randomPlayer} to {red team::*}
                send "The game has started! Teams have been assigned." to all players
                teleport all players in {blue team::*} to location 1, 1, 1
                teleport all players in {red team::*} to location 2, 2, 2

on damage:
    if damager is a player and damagee is a player:
        if damager is in {blue team::*} and damagee is in {blue team::*}:
            cancel event
        else if damager is in {red team::*} and damagee is in {red team::*}:
            cancel event

on death of player:
    if player is in {blue team::*}:
        remove 1 from {blue team kills}
        if {blue team kills} is at least 20:
            send "Blue team wins!" to all players
            teleport all players in {blue team::*} to location 5, 5, 5
            clear game data
    else if player is in {red team::*}:
        remove 1 from {red team kills}
        if {red team kills} is at least 20:
            send "Red team wins!" to all players
            teleport all players in {red team::*} to location 5, 5, 5
            clear game data

on player quit:
    if player is in {queued players}:
        remove player from {queued players}
    if player is in {blue team::*}:
        remove player from {blue team::*}
    if player is in {red team::*}:
        remove player from {red team::*}

on server start:
    set {blue team kills} to 0
    set {red team kills} to 0

on game start:
    set {queued players} to a list of players
    send "A new game is starting!" to all players


Note: I did not make this skript, a friend gave it to me and I dont know how to fix it.

Link to comment
Share on other sites

Hello, first of all, tell your friend that he should read the basic script documents, because this is a real shocker, there were at least 15 errors I had to fix and they weren't visible past the first 6, I don't know how it will/won't work because I didn't test it, I just fixed what jumped out at me, the only thing I really don't know what your friend meant is

on game start

so I could not fix that.

Here is your almost fixed code.. Your friend really need some practice XD

command /queue:
    trigger:
        if player is not in {queued players}:
            add player to {queued players}
            send "You have joined the queue!" to player
            if size of {queued players} is more than 4:
                loop 2 times:
                    set {_randomPlayer} to a random element of {queued players}
                    remove {_randomPlayer} from {queued players}
                    add {_randomPlayer} to {blue team::*}
                loop 2 times:
                    set {_randomPlayer} to a random element of {queued players}
                    remove {_randomPlayer} from {queued players}
                    add {_randomPlayer} to {red team::*}
                send "The game has started! Teams have been assigned." to all players
                teleport all players in {blue team::*} to location 1, 1, 1
                teleport all players in {red team::*} to location 2, 2, 2

on damage:
    if attacker is a player:
        if victim is a player:
            if attacker is in {blue team::*}:
                if victim is in {blue team::*}:
                    cancel event
            else if attacker is in {red team::*}:
                if victim is in {red team::*}:
                    cancel event

on death of player:
    if victim is in {blue team::*}:
        remove 1 from {blue team kills}
        if {blue team kills} is more than 19:
            send "Blue team wins!" to all players
            teleport all players in {blue team::*} to location 5, 5, 5
            set {blue team kills} to 0
    else if victim is in {red team::*}:
        remove 1 from {red team kills}
        if {red team kills} is more than 19:
            send "Red team wins!" to all players
            teleport all players in {red team::*} to location 5, 5, 5
            set {red team kills} to 0

on quit:
    if player is in {queued players}:
        remove player from {queued players}
    if player is in {blue team::*}:
        remove player from {blue team::*}
    if player is in {red team::*}:
        remove player from {red team::*}

on load:
    set {blue team kills} to 0
    set {red team kills} to 0

on game start:
    set {queued players} to a list of players
    send "A new game is starting!" to all players

 

Link to comment
Share on other sites

Also not to bother you but could you make it instead of this:

on game start:
    set {queued players} to a list of players
    send "A new game is starting!" to all players

Make it so when the game ends people have to join the queue again and then if theres more than 4 people then the game starts again.
And Ik im asking for a lot but if you can, can you make it so that when a game is going to start, it will have the option to pick between 2 maps, so if it picks map 1 for example it will tp blue team to -764, 3, 388, and red team to -821, 3, 295. And on map 2, set blue team to -698 5 606 and red team to -661 5 653.

And if it's too much thanks for the help anyways!!! =D

And then if there could be a command like /queue leave , that would be awesome! 

Link to comment
Share on other sites

Also make sure people cant make another queue when a game is in progress! And also btw is there a way where when people are joining the queue for more than 4 to join, like idk a ready system of sorts if possible, if not thats fine I dont want to over work you

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...