Jump to content

BanditEagle

Member
  • Posts

    852
  • Joined

  • Last visited

  • Days Won

    22

Everything posted by BanditEagle

  1. You can use this, i created a combat tag skript. Just please make sure to leave the credits in the file and not to distribute it to other players as if you created it.
  2. You can check the name of the player's inventory and allow the code to work only if it matches the gui's name
  3. Use this instead: give player sunflower named "&2coin"
  4. BanditEagle's Combat Tag & Spawn Skript! Useful Skript Tool For PVP-Related Events! Features: - Set Spawn - Teleport To Spawn With Countdown - Using Action Bar With Teleporting To Spawn - Cancel Teleporting If Movement Is Detected - Cancel Teleporting If In Combat - Combat Tag With Players Or All Entities - Using Bossbar With Combat Tag - Broadcasted Killstreaks Every 5 Kills Commands: - /setspawn (permission: spawn.set) - /spawn - /kills <player> Required Skript Addons: - Skript Optional Skript Addons: - SkRayFall If you found a bug or need support, please contact me here: - Discord: @BanditEagl3#4375 - Guilded.gg: @BanditEagle - skUnity: @BanditEagle - SpigotMC: @BanditEagle - Minehut Forums: @BanditEagle ️️️️️ Please leave a review about your thoughts of this skript! If there is anything I should add to this skript, be sure to let me know! combatNspawn.sk
  5. that wont work as it doesnt have the movement check. This will work though: options: spawnCountdown: 100 #The time needed until you can teleport to spawn (in ticks, 100 ticks = 5 seconds) spawnCountdownMsg: "&6You will be teleported to spawn in <number> second(s)." #Message players receive when using /spawn command /spawn: trigger: set {_timer} to 5 set {_countdown} to {@spawnCountdown} set {_loc} to location of player set {_seconds} to floor(({_countdown})/20) set {_int} to {_seconds} loop {_seconds} times: add {_int} to {_list::*} remove 1 from {_int} while {_countdown} is not 0: if distance between {_loc} and player is not 0: loop {_timer} times: send "&cCanceling teleport to spawn: Cannot teleport when moving." stop if {_list::*} contains {_seconds}: set {_msg} to {@spawnCountdownMsg} replace "<number>" in {_msg} with "%{_seconds}%" send action bar "%{_msg}%" remove 1 from {_countdown} wait a tick send "&6Teleporting you to spawn." teleport player to {spawn} command /setspawn: permission: spawn.set permission message: &cYou do not have access to this command" trigger: set {spawn} to player's location send "&aSpawn has been set to: &2%{spawn}%"
  6. Do you know how to skript or are you asking someone to make it for you?
  7. This isn't the correct format. It should be like so: open last gui to player Also, this is wrong too. It should be like so: create a gui with virtual chest inventory with 4 rows named "Shop":
  8. command /food: trigger: give player 64 steak Here you go, have fun! If this post helped you, please leave a reaction to show your appreciation!
  9. did you have a backup of the server?
  10. wouldn't this also work if one player stands on the diamond block for 200 ticks in total? I think you would need to clear the list every time so that there are no duplicates. I might be wrong, but its just what I am assuming.
  11. Instead of creating a new variable for each player, create a list. (so instead of using {level.%player%}, use {level::%player%}. This will work better and be beneficial in the long run).
  12. this isn't how you create lists (or as you know, arrays) in skript. Additionally, you can't create lists in the "options" section (at least to my knowledge). Here is what you can do: on load: set {blockList::*} to stone, coal ore and iron ore set {timeList::*} to 30 seconds, 60 seconds and 120 seconds on break: if {blockList::*} contains event-block: cancel event set {_block} to event-block set {_loc} to location at event-block give player {_block} set event-block to bedrock set {_size} to size of {blockList::*} loop {_size} times: set {_i} to loop-number if {blockList::%{_i}%} contains {_block}: wait {timeList::%{_i}%} set block at {_loc} to {_block} stop I'm not sure if this is the most efficient way of doing this, but this should work. I used the skUnity parser and it didn't return any errors, so I think this works. Let me know if there are any problems! Also, if this post helped you out, please leave a reaction! It means a lot to me!
  13. No problem at all! I'm glad I was able to help! I would really appreciate it if you could leave a reaction to my post if I was able to help you out!
  14. What do you need help with - installing them onto your server or using those addons in your skripts? If its about how to use them, you can look at a website such as skripthub.net to see how different addons are used in specific scenarios.
  15. I'm not familiar with craftenhance, but the only method of this would be something like: on load: set {CEList::*} to dirt, stone and diamond pickaxe #This is an example. Replace the items listed here with the items that are craftable by the plugin you are using. For example, if you can craft a bedrock with it, replace the items listed with that. Make sure to separate each item with commas (if its not the very last one). on craft: if {CEList::*} contains item: #code else: send "&cError: You are not allowed to craft this item" to player I hope that craftenhance doesn't include that many new items, as it would make a huge list, but to my knowledge there isn't any other method of achieving this. Hope this helps!
  16. Hi guys! I have some free time on my hands so if there are any skript ideas you would like me to make (or try to help fix a problem), please let me know! You can dm me on here or my discord or just reply to this post! I'll try and make it for you.
  17. options: combatTagTime: 10 #The time needed until combat tag is removed (in seconds) tagMsg: "&6You are now in combat" #Message players receive when they get in combat noTagMsg: "&6You are no longer in combat" #Message players receive when they aren't in combat killMsg: "&6<victim> has been killed by <attacker>" #Broadcasted message when a player kills another player killstreakMsg: "&6<player> has a <number> kill streak!" #Broadcasted message every 5 killstreaks maxKillStreak: 20 #Change this value for more or less max kill streak. This value is multiplied by 10 (so 20 would be 200) on leave: clear {combatTag::%player%} clear {killStreak::%player%} clear {lastCombat::%player%} on damage of player: attacker is a player if {combatTag::%victim%} is not set: set {combatTag::%victim%} to true set {lastCombat::%victim%} to attacker send {@tagMsg} to victim if {combatTag::%attacker%} is not set: set {combatTag::%attacker%} to true send {@tagMsg} to attacker wait {@combatTagTime} seconds clear {combatTag::%victim%} clear {combatTag::%attacker%} clear {lastCombat::%victim%} send {@noTagMsg} to victim send {@noTagMsg} to attacker on death of player: if {combatTag::%victim%} is not set: clear {killStreak::%victim%} add 1 to {deathCounter::%victim%} if {combatTag::%victim%} is set: add 1 to {deathCounter::%victim%} set {_killer} to {lastCombat::%victim%} clear {combatTag::%victim%} clear {killStreak::%victim%} clear {lastCombat::%victim%} add 1 to {killStreak::%{_killer}%} add 1 to {killStreak::%{_killer}%} if {killStreak::%{_killer}%} >= 5: set {_ksamount} to floor(({killStreak::%{_killer}%})/5) set {_int} to {@maxKillStreak} loop {@maxKillStreak} times: add {_int} to {_list::*} remove 1 from {_int} set {_list::*} to (1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20) if {_list::%{_ksamount}%::%{_killer}%} is not set: set {_list::%{_ksamount}%::%{_killer}%} to true set {_killstreak} to 5*{_ksamount} set {_broadcast} to {@killstreakMsg} replace "<player>" in {_broadcast} with "%{_killer}%" replace "<number>" in {_broadcast} with "%{_ksamount}%" broadcast "%{_broadcast}%" I didn't test this code out, so if any errors come up, or if something doesn't work, please let me know! Hope this helps (and if it does, please leave a reaction!) EDIT: I realized a mistake I made in the skript and fixed it.
  18. on load: set {compressingItem} to 1 of glowing mossy stone bricks named "&a&nCompressed Mossy Cobblestone" command /togglecompress <text>: permission: op trigger: if arg-1 is "on": set {compress} to true if arg-1 is "off": set {compress} to false else: send "&cError, unknown argument" to player on mine: if {compress} is true: if player's inventory contains 32 of mossy cobblestone: remove 32 of plain mossy cobblestone from player's inventory give player {compressingItem} Perhaps you can try something like this. I haven't tested it, so i don't know if it will work or not. If there are any errors or if it doesn't work, let me know. Also, creating a variable named {_item} everytime someone mines a block is quite bad for the speed of the server, so instead setting a global variable to whatever you want when the skript is loaded in would be better.
  19. Maybe try something like this: command /spawn: trigger: set {_cooldown} to 100 set {_loc} to location of player while {_cooldown} is not 0: remove 1 from {_cooldown} if distance between {_loc} and player is not 0: send "Canceling teleport to spawn." stop wait a tick teleport player to {spawn} Im not entirely sure how to cancel the tp if they take damage, but I think this should work for canceling if the player moves. I haven't tested it out, so if there are any errors/issues, let me know. EDIT: I figured out how to integrate the taking damage part as well, so here is the new skript: options: combatTagTime: 5 #The time needed until combat tag is removed (in seconds) spawnCountdown: 100 #The time needed until you can teleport to spawn (in ticks, 100 ticks = 5 seconds) spawnCountdownMsg: "&6You will be teleported to spawn in <number> seconds." #Message players receive when using /spawn tagMsg: "&6You are now in combat. You cannot teleport to spawn now." #Message players receive when they get in combat noTagMsg: "&6You are no longer in combat. You may teleport to spawn now." #Message players receive when they aren't in combat on leave: clear {combatTag::%player%} on damage of player: attacker is a player if {combatTag::%victim%} is not set: set {combatTag::%victim%} to true send {@tagMsg} to victim if {combatTag::%attacker%} is not set: set {combatTag::%attacker%} to true send {@tagMsg} to attacker wait {@combatTagTime} seconds clear {combatTag::%victim%} clear {combatTag::%attacker%} send {@noTagMsg} to victim send {@noTagMsg} to attacker on death of player: if {combatTag::%victim%} is set: clear {combatTag::%victim%} command /setspawn: permission: spawn.set permission message: &cYou do not have access to this command" trigger: set {spawn} to player's location send "&aSpawn has been set to: &2%{spawn}%" to player command /spawn: trigger: if {combatTag::%player%} is set: send "Canceling teleport to spawn: Cannot teleport when in combat." stop set {_countdown} to {@spawnCountdown} set {_loc} to location of player set {_msg} to {@spawnCountdownMsg} set {_seconds} to floor(({_countdown})/5) loop {_seconds} times: add {_int} to {_list::*} remove 1 from {_int} while {_countdown} is not 0: if distance between {_loc} and player is not 0: send "Canceling teleport to spawn: Cannot teleport when moving." stop if {combatTag::%player%} is set: send "Canceling teleport to spawn: Cannot teleport when in combat." stop set {_int} to floor(({_countdown})/5) if {_list::%{_int}%} is not set: set {_list::%{_int}%} to true replace "<number>" in {_msg} with "%{_int}%" send "%{_msg}%" to player remove 1 from {_countdown} wait a tick teleport player to {spawn}
  20. on right click: player is sneaking if player's held item is iron sword named "&6isword": spawn a primed tnt 1 meter above the player push the spawned entity in direction of player at speed 0.9 push the spawned entity upwards at speed 0.2 Try something like this. If it doesn't work lmk
  21. on right click: set weather in player's world to rain Try this out and let me know if it works
  22. Use this link, it can help solve your issue: https://forums.skunity.com/threads/on-fishing-state-event-bugged.4533/ EDIT: I found this post on the minehut forums which can solve your issues too:
×
×
  • Create New...