mirror of
https://github.com/2006-Scape/2006Scape.git
synced 2026-07-03 00:31:51 +00:00
Plugins System (#510)
* Started Ripping Plugin System From Astraeus
*Currently only ClickingButtons Support
*Also Started Using The Logout Button Plugin From Astraeus
* NpcFirstClickEvent setup for plugins
also made Man & Women chat work through this
* Server: Add Google Collect Lib
* Server: NpcSecondClickEvent setup for plugins
also handle pickpocketing npc clicking through plugin
* Server: NpcThirdClickEvent setup for plugins
* Server: Remove conflicting action for Secondclicking npc id 3
* Server: ItemFirstClickEvent setup for plugins
Also Handle Yo-Yo First Click Through This
* Server: ItemOnItemEvent setup for plugins
Also Handle Black Candle Lighting With Tinderbox Through this
* Server: ItemOnNpcEvent setup for plugins
* Server: ItemOnObjectEvent setup for plugins
Also Handle Fillable Items Through This
* Server: ItemSecondClickEvent & ItemThirdClickEvent setup for plugins
Also Handle Yo-Yo Actions Through This
* Server: ObjectFirstClickEvent setup for plugins
Also Handle FirstClick Mining Actions Through This
* Server: ObjectSecondClickEvent setup for plugins
Also Handle Stall Thieving Actions Through This
* Server: ObjectThirdClickEvent setup for plugins
* Server: ObjectFourthClickEvent setup for plugins
Also Handle Fourth Click Farming Object Actions Through This
* Server: MagicOnItemEvent setup for plugins
Also Handle SuperHeat Through This
* More mage training arena (#509)
* Fixup points display
* Only allow players to deposit up to 12k at one time
* Apple damage and play animation
* Update order or prices
* Update Telekinetic.java
(cherry picked from commit ab3b1e9731)
Co-authored-by: RedSparr0w <RedSparr0w@users.noreply.github.com>
Co-authored-by: Danial <admin@redsparr0w.com>
This commit is contained in:
@@ -0,0 +1,17 @@
|
||||
package plugin.buttons
|
||||
|
||||
import com.rs2.event.EventContext
|
||||
import com.rs2.event.EventSubscriber
|
||||
import com.rs2.event.impl.ButtonActionEvent
|
||||
import com.rs2.game.players.Player
|
||||
|
||||
|
||||
abstract class ButtonClick : EventSubscriber<ButtonActionEvent> {
|
||||
|
||||
override fun subscribe(context: EventContext, player: Player, event: ButtonActionEvent) {
|
||||
execute(player, event)
|
||||
}
|
||||
|
||||
abstract fun execute(player : Player, event : ButtonActionEvent);
|
||||
|
||||
}
|
||||
@@ -0,0 +1,20 @@
|
||||
package plugin.buttons.gameframe
|
||||
|
||||
import com.rs2.event.SubscribesTo
|
||||
import com.rs2.event.impl.ButtonActionEvent
|
||||
|
||||
import com.rs2.game.players.Player
|
||||
import plugin.buttons.ButtonClick
|
||||
|
||||
@SubscribesTo(ButtonActionEvent::class)
|
||||
class LogoutButton : ButtonClick() {
|
||||
|
||||
override fun execute(player: Player, event: ButtonActionEvent) {
|
||||
player.logout()
|
||||
}
|
||||
|
||||
override fun test(event: ButtonActionEvent): Boolean {
|
||||
return event.button == 9154;
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
[
|
||||
{
|
||||
"name": "Logout Button",
|
||||
"description": "The button for logging a player out.",
|
||||
"group": "button",
|
||||
"base": "plugin.buttons.gameframe.LogoutButton",
|
||||
"authors": [
|
||||
"Vult-R"
|
||||
],
|
||||
"version": 1.0
|
||||
}
|
||||
]
|
||||
@@ -0,0 +1,28 @@
|
||||
package plugin.click.item
|
||||
|
||||
import com.rs2.event.EventContext
|
||||
import com.rs2.event.EventSubscriber
|
||||
import com.rs2.event.SubscribesTo
|
||||
import com.rs2.event.impl.ItemFirstClickEvent
|
||||
import com.rs2.game.players.Player
|
||||
|
||||
|
||||
@SubscribesTo(ItemFirstClickEvent::class)
|
||||
class ItemFirstClick : EventSubscriber<ItemFirstClickEvent> {
|
||||
|
||||
override fun subscribe(context: EventContext, player: Player, event: ItemFirstClickEvent) {
|
||||
|
||||
if (player.playerRights >= 3) {
|
||||
player.packetSender.sendMessage("[ItemClick#1] - Item: ${event.item}")
|
||||
}
|
||||
|
||||
when(event.item) {
|
||||
|
||||
4079 -> player.startAnimation(1457) // yo-yo
|
||||
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,25 @@
|
||||
package plugin.click.item
|
||||
|
||||
import com.rs2.event.EventContext
|
||||
import com.rs2.event.EventSubscriber
|
||||
import com.rs2.event.SubscribesTo
|
||||
import com.rs2.event.impl.ItemOnItemEvent
|
||||
import com.rs2.game.players.Player
|
||||
|
||||
@SubscribesTo(ItemOnItemEvent::class)
|
||||
class ItemOnItem : EventSubscriber<ItemOnItemEvent> {
|
||||
|
||||
override fun subscribe(context: EventContext, player: Player, event: ItemOnItemEvent) {
|
||||
|
||||
if (player.playerRights >= 3) {
|
||||
player.packetSender.sendMessage("[ItemOnItem] - used: ${event.used} with: ${event.usedWith}")
|
||||
}
|
||||
|
||||
if (event.used == 38 && event.usedWith == 590) {
|
||||
player.itemAssistant.addItem(32, 1)
|
||||
player.itemAssistant.deleteItem(38, 1)
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
package plugin.click.item
|
||||
|
||||
import com.rs2.event.EventContext
|
||||
import com.rs2.event.EventSubscriber
|
||||
import com.rs2.event.SubscribesTo
|
||||
import com.rs2.event.impl.ItemOnNpcEvent
|
||||
import com.rs2.game.npcs.NpcHandler
|
||||
import com.rs2.game.players.Player
|
||||
|
||||
@SubscribesTo(ItemOnNpcEvent::class)
|
||||
class ItemOnNpc : EventSubscriber<ItemOnNpcEvent> {
|
||||
|
||||
override fun subscribe(context: EventContext, player: Player, event: ItemOnNpcEvent) {
|
||||
|
||||
if (player.playerRights >= 3) {
|
||||
player.packetSender.sendMessage("[ItemOnNpc] - itemId: ${event.item} npcId: ${event.npc}")
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,30 @@
|
||||
package plugin.click.item
|
||||
|
||||
import com.rs2.event.EventContext
|
||||
import com.rs2.event.EventSubscriber
|
||||
import com.rs2.event.SubscribesTo
|
||||
import com.rs2.event.impl.ItemOnObjectEvent
|
||||
import com.rs2.game.items.impl.Fillables
|
||||
import com.rs2.game.players.Player
|
||||
|
||||
|
||||
@SubscribesTo(ItemOnObjectEvent::class)
|
||||
class ItemOnObject : EventSubscriber<ItemOnObjectEvent> {
|
||||
|
||||
override fun subscribe(context: EventContext, player: Player, event: ItemOnObjectEvent) {
|
||||
if (player.playerRights >= 3) {
|
||||
player.packetSender.sendMessage("[ItemOnObject] - itemId: ${event.item} objectId: ${event.gameObject} Location: x: ${player.objectX}, x: ${player.objectY}")
|
||||
}
|
||||
|
||||
if (Fillables.canFill(event.item, event.gameObject) && player.itemAssistant.playerHasItem(event.item)) {
|
||||
//val amount = player.itemAssistant.getItemAmount(event.item)
|
||||
player.itemAssistant.deleteItem(event.item, 1)
|
||||
player.itemAssistant.addItem(Fillables.counterpart(event.item), 1)
|
||||
player.packetSender.sendMessage(Fillables.fillMessage(event.item, event.gameObject))
|
||||
player.startAnimation(832)
|
||||
return
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,27 @@
|
||||
package plugin.click.item
|
||||
|
||||
import com.rs2.event.EventContext
|
||||
import com.rs2.event.EventSubscriber
|
||||
import com.rs2.event.SubscribesTo
|
||||
import com.rs2.event.impl.ItemSecondClickEvent
|
||||
import com.rs2.game.players.Player
|
||||
|
||||
@SubscribesTo(ItemSecondClickEvent::class)
|
||||
class ItemSecondClick : EventSubscriber<ItemSecondClickEvent> {
|
||||
|
||||
override fun subscribe(context: EventContext, player: Player, event: ItemSecondClickEvent) {
|
||||
|
||||
if (player.playerRights >= 3) {
|
||||
player.packetSender.sendMessage("[ItemClick#2] - ItemId: ${event.id}")
|
||||
}
|
||||
|
||||
when(event.id) {
|
||||
|
||||
4079 -> player.startAnimation(1459) //yo-yo
|
||||
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,28 @@
|
||||
package plugin.click.item
|
||||
|
||||
import com.rs2.event.EventContext
|
||||
import com.rs2.event.EventSubscriber
|
||||
import com.rs2.event.SubscribesTo
|
||||
import com.rs2.event.impl.ItemThirdClickEvent
|
||||
import com.rs2.game.players.Player
|
||||
|
||||
@SubscribesTo(ItemThirdClickEvent::class)
|
||||
class ItemThirdClick : EventSubscriber<ItemThirdClickEvent> {
|
||||
|
||||
override fun subscribe(context: EventContext, player: Player, event: ItemThirdClickEvent) {
|
||||
|
||||
if (player.playerRights >= 3) {
|
||||
player.packetSender.sendMessage("[ItemClick#3] - ItemId: ${event.id}")
|
||||
}
|
||||
|
||||
when(event.id) {
|
||||
|
||||
4079 -> player.startAnimation(1460) //yo-yo
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,62 @@
|
||||
[
|
||||
{
|
||||
"name": "Item First Click",
|
||||
"description": "The plugin for handling the first option of an item.",
|
||||
"group": "click",
|
||||
"base": "plugin.click.item.ItemFirstClick",
|
||||
"authors": [
|
||||
"Vult-R"
|
||||
],
|
||||
"version": 1.0
|
||||
},
|
||||
{
|
||||
"name": "Item Second Click",
|
||||
"description": "The plugin for handling the second option of an item.",
|
||||
"group": "click",
|
||||
"base": "plugin.click.item.ItemSecondClick",
|
||||
"authors": [
|
||||
"Vult-R"
|
||||
],
|
||||
"version": 1.0
|
||||
},
|
||||
{
|
||||
"name": "Item Third Click",
|
||||
"description": "The plugin for handling the third option of an item.",
|
||||
"group": "click",
|
||||
"base": "plugin.click.item.ItemThirdClick",
|
||||
"authors": [
|
||||
"Vult-R"
|
||||
],
|
||||
"version": 1.0
|
||||
},
|
||||
{
|
||||
"name": "Item On Item",
|
||||
"description": "The plugin for handling using an item on another item.",
|
||||
"group": "item",
|
||||
"base": "plugin.click.item.ItemOnItem",
|
||||
"authors": [
|
||||
"Vult-R"
|
||||
],
|
||||
"version": 1.0
|
||||
},
|
||||
{
|
||||
"name": "Item On Npc",
|
||||
"description": "The plugin for handling using an item on an npc.",
|
||||
"group": "item",
|
||||
"base": "plugin.click.item.ItemOnNpc",
|
||||
"authors": [
|
||||
"Vult-R"
|
||||
],
|
||||
"version": 1.0
|
||||
},
|
||||
{
|
||||
"name": "Item On Object",
|
||||
"description": "The plugin for handling using an item on a game object.",
|
||||
"group": "item",
|
||||
"base": "plugin.click.item.ItemOnObject",
|
||||
"authors": [
|
||||
"Vult-R"
|
||||
],
|
||||
"version": 1.0
|
||||
}
|
||||
]
|
||||
@@ -0,0 +1,26 @@
|
||||
package plugin.click.magic
|
||||
|
||||
import com.rs2.event.EventContext
|
||||
import com.rs2.event.EventSubscriber
|
||||
import com.rs2.event.SubscribesTo
|
||||
import com.rs2.event.impl.MagicOnItemEvent
|
||||
import com.rs2.game.content.skills.smithing.Superheat
|
||||
import com.rs2.game.players.Player
|
||||
|
||||
@SubscribesTo(MagicOnItemEvent::class)
|
||||
class MagicOnItem : EventSubscriber<MagicOnItemEvent> {
|
||||
|
||||
override fun subscribe(context: EventContext, player: Player, event: MagicOnItemEvent) {
|
||||
if (player.playerRights >= 3) {
|
||||
player.packetSender.sendMessage("[MagicOnItem] - ItemId: ${event.itemId} Slot: ${event.slot} SpellId: ${event.spellId}");
|
||||
}
|
||||
|
||||
when(event.spellId) {
|
||||
1173 -> if (!Superheat.superHeatItem(player, event.itemId)) {
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
[
|
||||
{
|
||||
"name": "Magic On Item",
|
||||
"description": "The plugin for handling using spells on items.",
|
||||
"group": "magic",
|
||||
"base": "plugin.click.magic.MagicOnItem",
|
||||
"authors": [
|
||||
"Vult-R"
|
||||
],
|
||||
"version": 1.0
|
||||
}
|
||||
]
|
||||
@@ -0,0 +1,35 @@
|
||||
package plugin.click.npc
|
||||
|
||||
import com.rs2.GameConstants
|
||||
import com.rs2.event.EventContext
|
||||
import com.rs2.event.EventSubscriber
|
||||
import com.rs2.event.SubscribesTo
|
||||
import com.rs2.event.impl.NpcFirstClickEvent
|
||||
import com.rs2.game.npcs.Npc
|
||||
import com.rs2.game.players.Player
|
||||
import com.rs2.util.Misc
|
||||
|
||||
|
||||
@SubscribesTo(NpcFirstClickEvent::class)
|
||||
class NpcFirstClick : EventSubscriber<NpcFirstClickEvent> {
|
||||
|
||||
override fun subscribe(context: EventContext, player: Player, event: NpcFirstClickEvent) {
|
||||
|
||||
if (player.playerRights >= 3) {
|
||||
player.packetSender.sendMessage("[click= npc], [type = first], [id= ${event.npc}], [Type= ${event.npc}]");
|
||||
}
|
||||
|
||||
when(event.npc) {
|
||||
|
||||
1,2,3,4,5,6 -> if (Misc.random(10) <= 5) {
|
||||
player.dialogueHandler.sendDialogues(3869, player.npcType)
|
||||
} else {
|
||||
player.dialogueHandler.sendDialogues(3872, player.npcType)
|
||||
}
|
||||
|
||||
//else ->
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,30 @@
|
||||
package plugin.click.npc
|
||||
|
||||
import com.rs2.event.EventContext
|
||||
import com.rs2.event.EventSubscriber
|
||||
import com.rs2.event.SubscribesTo
|
||||
import com.rs2.event.impl.NpcSecondClickEvent
|
||||
import com.rs2.game.content.skills.thieving.Pickpocket
|
||||
import com.rs2.game.players.Player
|
||||
|
||||
@SubscribesTo(NpcSecondClickEvent::class)
|
||||
class NpcSecondClick : EventSubscriber<NpcSecondClickEvent> {
|
||||
|
||||
override fun subscribe(context: EventContext, player: Player, event: NpcSecondClickEvent) {
|
||||
|
||||
if (player.playerRights >= 3) {
|
||||
player.packetSender.sendMessage("[click= npc], [type = second], [id= ${event.npc}], [Type= ${event.npc}]");
|
||||
}
|
||||
|
||||
if (Pickpocket.isNPC(player, player.npcType)) {
|
||||
Pickpocket.attemptPickpocket(player, player.npcType)
|
||||
return
|
||||
}
|
||||
|
||||
when(event.npc) {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,24 @@
|
||||
package plugin.click.npc
|
||||
|
||||
import com.rs2.event.EventContext
|
||||
import com.rs2.event.EventSubscriber
|
||||
import com.rs2.event.SubscribesTo
|
||||
import com.rs2.event.impl.NpcThirdClickEvent
|
||||
import com.rs2.game.players.Player
|
||||
|
||||
@SubscribesTo(NpcThirdClickEvent::class)
|
||||
class NpcThirdClick : EventSubscriber<NpcThirdClickEvent> {
|
||||
|
||||
override fun subscribe(context: EventContext, player: Player, event: NpcThirdClickEvent) {
|
||||
|
||||
if (player.playerRights >= 3) {
|
||||
player.packetSender.sendMessage("[click= npc], [type = third], [id= ${event.npc}], [Type= ${event.npc}]");
|
||||
}
|
||||
|
||||
when(event.npc) {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,32 @@
|
||||
[
|
||||
{
|
||||
"name": "Npc First Click",
|
||||
"description": "The plugin for handling the first option of an npc.",
|
||||
"group": "click",
|
||||
"base": "plugin.click.npc.NpcFirstClick",
|
||||
"authors": [
|
||||
"Vult-R"
|
||||
],
|
||||
"version": 1.0
|
||||
},
|
||||
{
|
||||
"name": "Npc Second Click",
|
||||
"description": "The plugin for handling the second option of an npc.",
|
||||
"group": "click",
|
||||
"base": "plugin.click.npc.NpcSecondClick",
|
||||
"authors": [
|
||||
"Vult-R"
|
||||
],
|
||||
"version": 1.0
|
||||
},
|
||||
{
|
||||
"name": "Npc Third Click",
|
||||
"description": "The plugin for handling the third option of an npc.",
|
||||
"group": "click",
|
||||
"base": "plugin.click.npc.NpcThirdClick",
|
||||
"authors": [
|
||||
"Vult-R"
|
||||
],
|
||||
"version": 1.0
|
||||
}
|
||||
]
|
||||
@@ -0,0 +1,31 @@
|
||||
package plugin.click.obj
|
||||
|
||||
import com.rs2.event.EventContext
|
||||
import com.rs2.event.EventSubscriber
|
||||
import com.rs2.event.SubscribesTo
|
||||
import com.rs2.event.impl.ObjectFirstClickEvent
|
||||
import com.rs2.game.content.skills.core.Mining
|
||||
import com.rs2.game.players.Player
|
||||
|
||||
@SubscribesTo(ObjectFirstClickEvent::class)
|
||||
class ObjectFirstClick : EventSubscriber<ObjectFirstClickEvent> {
|
||||
|
||||
override fun subscribe(context: EventContext, player: Player, event: ObjectFirstClickEvent) {
|
||||
|
||||
if (player.playerRights >= 3) {
|
||||
player.packetSender.sendMessage("[click= object], [type= first], [id= ${player.objectId}], [location= x:${player.objectX} y:${player.objectY} ]")
|
||||
}
|
||||
|
||||
// if its a rock we can mine, mine it
|
||||
if (Mining.rockExists(event.gameObject)) {
|
||||
player.mining.startMining(player, event.gameObject, player.objectX, player.objectY, player.clickObjectType)
|
||||
return
|
||||
}
|
||||
|
||||
when (event.gameObject) {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,31 @@
|
||||
package plugin.click.obj
|
||||
|
||||
import com.rs2.event.EventContext
|
||||
import com.rs2.event.EventSubscriber
|
||||
import com.rs2.event.SubscribesTo
|
||||
import com.rs2.event.impl.ObjectFourthClickEvent
|
||||
import com.rs2.game.content.skills.farming.Farming
|
||||
import com.rs2.game.players.Player
|
||||
import com.rs2.world.clip.Region
|
||||
|
||||
@SubscribesTo(ObjectFourthClickEvent::class)
|
||||
class ObjectFourthClick : EventSubscriber<ObjectFourthClickEvent> {
|
||||
|
||||
override fun subscribe(context: EventContext, player: Player, event: ObjectFourthClickEvent) {
|
||||
|
||||
if (player.playerRights >= 3) {
|
||||
player.packetSender.sendMessage("[click= object], [type= fourth], [id= ${player.objectId}], [location= x:${player.objectX} y:${player.objectY} ], [PLUGIN]");
|
||||
}
|
||||
|
||||
if (!Region.objectExists(player.objectId, player.objectX, player.objectY, player.heightLevel)) {
|
||||
return
|
||||
}
|
||||
|
||||
Farming.guide(player, player.objectX, player.objectY)
|
||||
|
||||
when (event.gameObject) {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,30 @@
|
||||
package plugin.click.obj
|
||||
|
||||
import com.rs2.event.EventContext
|
||||
import com.rs2.event.EventSubscriber
|
||||
import com.rs2.event.SubscribesTo
|
||||
import com.rs2.event.impl.ObjectSecondClickEvent
|
||||
import com.rs2.game.content.skills.thieving.Stalls
|
||||
import com.rs2.game.players.Player
|
||||
|
||||
@SubscribesTo(ObjectSecondClickEvent::class)
|
||||
class ObjectSecondClick : EventSubscriber<ObjectSecondClickEvent> {
|
||||
|
||||
override fun subscribe(context: EventContext, player: Player, event: ObjectSecondClickEvent) {
|
||||
|
||||
if (player.playerRights >= 3) {
|
||||
player.packetSender.sendMessage("[click= object], [type= second], [id= ${player.objectId}], [location= x:${player.objectX} y:${player.objectY} ]");
|
||||
}
|
||||
|
||||
if (Stalls.isObject(event.gameObject)) {
|
||||
Stalls.attemptStall(player, event.gameObject, player.objectX, player.objectY)
|
||||
return
|
||||
}
|
||||
|
||||
when (event.gameObject) {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,30 @@
|
||||
package plugin.click.obj
|
||||
|
||||
import com.rs2.event.EventContext
|
||||
import com.rs2.event.EventSubscriber
|
||||
import com.rs2.event.SubscribesTo
|
||||
import com.rs2.event.impl.ObjectThirdClickEvent
|
||||
import com.rs2.game.content.skills.thieving.Stalls
|
||||
import com.rs2.game.players.Player
|
||||
|
||||
@SubscribesTo(ObjectThirdClickEvent::class)
|
||||
class ObjectThirdClick : EventSubscriber<ObjectThirdClickEvent> {
|
||||
|
||||
override fun subscribe(context: EventContext, player: Player, event: ObjectThirdClickEvent) {
|
||||
|
||||
if (player.playerRights >= 3) {
|
||||
player.packetSender.sendMessage("[click= object], [type= third], [id= ${player.objectId}], [location= x:${player.objectX} y:${player.objectY} ], [PLUGIN]");
|
||||
}
|
||||
|
||||
if (Stalls.isObject(event.gameObject)) {
|
||||
Stalls.attemptStall(player, event.gameObject, player.objectX, player.objectY)
|
||||
return
|
||||
}
|
||||
|
||||
when (event.gameObject) {
|
||||
10177 -> player.playerAssistant.movePlayer(1798, 4407, 3);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,42 @@
|
||||
[
|
||||
{
|
||||
"name": "Object First Click",
|
||||
"description": "The plugin for handling the first option of an object.",
|
||||
"group": "click",
|
||||
"base": "plugin.click.obj.ObjectFirstClick",
|
||||
"authors": [
|
||||
"Vult-R"
|
||||
],
|
||||
"version": 1.0
|
||||
},
|
||||
{
|
||||
"name": "Object Second Click",
|
||||
"description": "The plugin for handling the second option of an object.",
|
||||
"group": "click",
|
||||
"base": "plugin.click.obj.ObjectSecondClick",
|
||||
"authors": [
|
||||
"Vult-R"
|
||||
],
|
||||
"version": 1.0
|
||||
},
|
||||
{
|
||||
"name": "Object Third Click",
|
||||
"description": "The plugin for handling the third option of an object.",
|
||||
"group": "click",
|
||||
"base": "plugin.click.obj.ObjectThirdClick",
|
||||
"authors": [
|
||||
"Vult-R"
|
||||
],
|
||||
"version": 1.0
|
||||
},
|
||||
{
|
||||
"name": "Object Fourth Click",
|
||||
"description": "The plugin for handling the fourth option of an object.",
|
||||
"group": "click",
|
||||
"base": "plugin.click.obj.ObjectFourthClick",
|
||||
"authors": [
|
||||
"Vult-R"
|
||||
],
|
||||
"version": 1.0
|
||||
}
|
||||
]
|
||||
Reference in New Issue
Block a user