Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- script options:
- $ db url jdbc:mysql://127.0.0.1:3306/<name>
- $ db username <insert DB username>
- $ db password <insert DB password>
- command /friends [<text>] [<text>]:
- aliases: /friend
- trigger:
- if arg-1 is not set:
- send "&7/friend &eadd <user>"
- send "&7/friend &eremove <user>"
- send "&7/friend &eaccept <user>"
- send "&7/friend &edeny <user>"
- send "&7/friend &elist [<page>]"
- else if arg-1 is "add":
- if arg-2 is not set:
- send "&7/friend add &e<user>"
- else if sql var "pu::%arg-2%" exists is false:
- send "&e%arg-2%&7 has never joined this server."
- else if "%arg-2%" is "%sender%":
- send "&7You cannot add yourself as a friend"
- else if getFriends(sender) is greater than or equal to 150:
- send "&7You may only have up to &e150 friends!"
- else if sql var "options::options::friendrequests::%arg-2%" exists is true:
- send "&7%arg-2% is ignoring friend requests."
- else if sql var "friends::%sender%::%arg-2%" exists is true:
- send "&7You are already friends with &e%arg-2%."
- else if sql var "options::friendrequests::%arg-2%::%sender%" exists is true:
- send "&7You have already sent a request to &e%arg-2%."
- else:
- set sql var "options::friendrequests::%arg-2%::%sender%" to "true"
- set sql var "options::friendrequests::%arg-2%::%sender%::sent" to "%unix time%"
- send "&7Sent &e%arg-2%&7 a friend request."
- bungee tell "&e%sender%&7 sent you a friend request!" to "%arg-2%"
- else if arg-1 is "remove":
- if arg-2 is not set:
- send "&7/friend remove &e<user>"
- else if "%arg-2%" is "%sender%":
- send "&7You cannot add yourself as a friend."
- else if sql var "pu::%arg-2%" exists is false:
- send "&e%arg-2%&7 has never joined this server."
- else if sql var "friends::%sender%::%arg-2%" exists is false:
- send "&7You are not friends with &e%arg-2%."
- else:
- delete sql var "friends::%arg-2%::%sender%"
- delete sql var "friends::%sender%::%arg-2%"
- send "&7Removed &e%arg-2%&7 from your friend list."
- bungee tell "&e%sender%&7 removed you from their friend list." to "%arg-2%"
- else if arg-1 is "accept":
- if arg-2 is not set:
- send "&7/friend accept &e<user>"
- else if sql var "pu::%arg-2%" exists is false:
- send "&e%arg-2%&7 has never joined this server."
- else if "%arg-2%" is "%sender%":
- send "&7You cannot add yourself as a friend."
- else if getFriends(sender) is greater than or equal to 150:
- send "&7You may only have up to &e150 friends!"
- else if sql var "friends::%sender%::%arg-2%" exists is true:
- send "&7You are already friends with &e%arg-2%."
- else if sql var "options::friendrequests::%sender%::%arg-2%" exists is false:
- send "&7You do not have a friend request from &e%arg-2%."
- else:
- send "&7You accepted &e%arg-2%'s&7 friend request!"
- bungee tell "&e%sender%&7 has accepted your friend request!" to "%arg-2%"
- delete sql var "options::friendrequests::%sender%::%arg-2%"
- delete sql var "options::friendrequests::%arg-2%::%sender%"
- delete sql var "options::friendrequests::%sender%::%arg-2%::sent"
- delete sql var "options::friendrequests::%arg-2%::%sender%::sent"
- set sql var "friends::%arg-2%::%sender%" to "true"
- set sql var "friends::%sender%::%arg-2%" to "true"
- else if arg-1 is "deny":
- if arg-2 is not set:
- send "&7/friend deny &e<user>"
- else if "%arg-2%" is "%sender%":
- send "&7You cannot add yourself as a friend."
- else if sql var "pu::%arg-2%" exists is false:
- send "&7%arg-2% has never joined this server."
- else if sql var "friends::%sender%::%arg-2%" exists is true:
- send "&7You are friends with &e%arg-2%&7. If you are trying to remove them, use /friend remove <user>!"
- else if sql var "options::friendrequests::%sender%::%arg-2%" exists is false:
- send "&7You do not have a friend request from &e%arg-2%."
- else:
- send "&8You have denied &e%arg-2%'s&7 friend request!"
- bungee tell "&e%sender%&7 has denied your friend request!" to "%arg-2%"
- delete sql var "options::friendrequests::%sender%::%arg-2%"
- delete sql var "options::friendrequests::%arg-2%::%sender%"
- else if arg-1 is "list":
- set {_pg} to 1
- if arg-2 is set:
- set {_pg} to "%arg-2%" parsed as integer
- if {_pg} is not set:
- send "&e%arg-2%&7 is not a valid page number."
- else if {_pg} is less than 1:
- set {_pg} to 1
- else if getFriends(sender) is 0:
- send "&7You do not currently have any friends!"
- else if getFriends(sender) is not set:
- send "&7You do not currently have any friends!"
- else if {_pg} is greater than ceil(getFriends(sender)/10):
- set {_pg} to ceil(getFriends(sender)/10)
- else:
- send "&7==========&eFriends&7=========="
- set {_Objects::*} to objects in column "VarName" from result of query "SELECT * FROM SQLVariables WHERE VarName LIKE '%%friends::%sender's uuid%%%'"
- loop {_Objects::*}:
- add 1 to {_friendloop}
- {_friendloop} is between (({_pg} - 1) * 10 + 1) and {_pg} * 10
- set {_lv} to "%loop-value%"
- set {_lv::*} to {_lv} split at "::"
- set {_lv} to {_lv::3}
- set {_player} to value of sql var "pn::%{_lv}%"
- set {_rank} to value of sql var "rank::%{_lv}%"
- if sql var "online::%{_lv}%" exists is true:
- set {_server} to value of sql var "online::%{_lv}%"
- replace all "`" with "'" in {_server}
- send "%{_rank}%: %{_player}% &e[Online (%{_server}%)]"
- else:
- send "%{_rank}%: %{_player}% &7[Offline]"
- send "&7==========&ePage %{_pg}%/%ceil(getFriends(sender)/10)%&7=========="
- else:
- send "&7/friend &eadd <user>"
- send "&7/friend &eremove <user>"
- send "&7/friend &eaccept <user>"
- send "&7/friend &edeny <user>"
- send "&7/friend &elist [<page>]"
- on join:
- set {_Objects::*} to objects in column "VarName" from result of query "SELECT * FROM SQLVariables WHERE VarName LIKE '%%options::friendrequests::%player's uuid%%%'"
- {_Objects::*} is set
- loop {_Objects::*}:
- set {_lv} to "%loop-value%"
- set {_lv::*} to {_lv} split at "::"
- set {_lv} to {_lv::3}
- set {_unix} to value of sql var "options::friendrequests::%player%::%{_lv}%::sent"
- set {_unix} to convert unix ({_unix} parsed as number) to date
- if difference between {_unix} and now is greater than 1 day:
- delete sql var "options::friendrequests::%{_lv}%::%player%::sent"
- delete sql var "options::friendrequests::%{_lv}%::%player%"
- delete sql var "options::friendrequests::%player%::%{_lv}%::sent"
- delete sql var "options::friendrequests::%player%::%{_lv}%"
- else:
- set {_p} to value of sql var "pn::%{_lv}%"
- set {_friends::%{_p}%} to {_p}
- if size of {_friends::*} is 1:
- send "&7Pending friend request&e: %{_friends::*}%"
- else:
- {_friends::*} is set
- send "&7Pending friend requests:&e %{_friends::*}%"
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement