Blocks cant be destroyed if they are in a special region

  • 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!

  • LOOKING FOR A VERSION OF SKRIPT?

    You can always check out skUnity Downloads for downloads and any other information about Skript!

NilremYT

Member
Mar 28, 2024
12
0
1
23
Hey i need help with my code i tried to make it so you can only break special blocks in the whole map but now i want to make cobwebs dont get destroyed if they are in the region i say
like: if cobweb is in region mine1 = it cant be destroyed
if cobweb is in region mine10 = it can be destroyed

Plugins used: Skript, Worldguard
here is my code

Code:
on block break:
  if {blockbreakbypass.%player's uuid%} is not set:
    if "%region at event-block%" is "valorant2 or valorant1":
      if event-block is not cobweb or gray concrete powder or pink concrete powder or brown concrete powder or magenta concrete powder or lime concrete powder or orange concrete powder or red concrete powder or yellow concrete powder or white concrete powder or light gray concrete powder or black concrete powder or cyan concrete powder or amethyst block or gold block or diamond block or emerald block or netherite block or beacon:
      cancel event
  else if {blockbreakbypass.%player's uuid%} is true:
    send "&8[&d&lSpy&e&lAnd&b&lNil&8]&7&l Hey you are right now bypassing our block break." to player

on block place:
  if {blockbreakbypass.%player's uuid%} is not set:
    event-block is not cobweb
    cancel event
  else if {blockbreakbypass.%player's uuid%} is true:
    send "&8[&d&lSpy&e&lAnd&b&lNil&8]&7&l Hey you are right now bypassing our block break." to player


command blockbreakbypass:
  aliases: bbbypass, bypassbreak
  permission: sk.blockbreakbypass
  trigger:
    if {blockbreakbypass.%player's uuid%} is not set:
      set {blockbreakbypass.%player's uuid%} to true
      send "&8[&d&lSpy&e&lAnd&b&lNil&8]&7&l You are now bypassing our block break" to player

    else:
      delete {blockbreakbypass.%player's uuid%}
      send "&8[&d&lSpy&e&lAnd&b&lNil&8]&7&l You are not anymore bypassing our block break" to player
 
if "%region at event-block%" is "valorant2 or valorant1":
"valorant2" or "valorant1"

What is going wrong with your skript?
 
if "%region at event-block%" is "valorant2 or valorant1":
"valorant2" or "valorant1"

What is going wrong with your skript?
it does kinda work but than i cant break the blocks outsite of the regions too or place them
 
For regions use contain, because %region% contain the world name too.
Remember to put the names of the regions separately in quotation marks "region1" or "region2"
I'm not 100% sure, but I know that delete {variable} delete it on server restart.

Code:
on block break:
    if {blockbreakbypass.%player's uuid%} is true:
        send "&8[&d&lSpy&e&lAnd&b&lNil&8]&7&l Hey you are right now bypassing our block break." to player
    else:
        if "%region at event-block%" contain "test":
            if event-block is not cobweb or gray concrete powder or pink concrete powder or brown concrete powder or magenta concrete powder or lime concrete powder or orange concrete powder or red concrete powder or yellow concrete powder or white concrete powder or light gray concrete powder or black concrete powder or cyan concrete powder or amethyst block or gold block or diamond block or emerald block or netherite block or beacon:
                cancel event

on block place:
    if {blockbreakbypass.%player's uuid%} is true:
        send "&8[&d&lSpy&e&lAnd&b&lNil&8]&7&l Hey you are right now bypassing our block break." to player
    else:
        if "%region at event-block%" contain "test":
            if event-block is not cobweb:
                cancel event



command blockbreakbypass:
    aliases: bbbypass, bypassbreak
    permission: sk.blockbreakbypass
    trigger:
        if {blockbreakbypass.%player's uuid%} is not set:
            set {blockbreakbypass.%player's uuid%} to true
            send "&8[&d&lSpy&e&lAnd&b&lNil&8]&7&l You are now bypassing our block break" to player
        else if {blockbreakbypass.%player's uuid%} is false:
            set {blockbreakbypass.%player's uuid%} to true
            send "&8[&d&lSpy&e&lAnd&b&lNil&8]&7&l You are now bypassing our block break" to player
        else:
            set {blockbreakbypass.%player's uuid%} to false
            send "&8[&d&lSpy&e&lAnd&b&lNil&8]&7&l You are not anymore bypassing our block break" to player