This repository has been archived by the owner on Apr 12, 2022. It is now read-only.
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
3 changed files
with
180 additions
and
90 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
180 changes: 90 additions & 90 deletions
180
src/main/java/com/denizenscript/denizen2sponge/events/player/PlayerChatsScriptEvent.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,90 +1,90 @@ | ||
package com.denizenscript.denizen2sponge.events.player; | ||
|
||
import com.denizenscript.denizen2core.events.ScriptEvent; | ||
import com.denizenscript.denizen2core.tags.AbstractTagObject; | ||
import com.denizenscript.denizen2sponge.Denizen2Sponge; | ||
import com.denizenscript.denizen2sponge.tags.objects.FormattedTextTag; | ||
import com.denizenscript.denizen2sponge.tags.objects.PlayerTag; | ||
import org.spongepowered.api.Sponge; | ||
import org.spongepowered.api.entity.living.player.Player; | ||
import org.spongepowered.api.event.Listener; | ||
import org.spongepowered.api.event.filter.cause.Root; | ||
import org.spongepowered.api.event.message.MessageChannelEvent; | ||
|
||
import java.util.HashMap; | ||
|
||
public class PlayerChatsScriptEvent extends ScriptEvent { | ||
|
||
// <--[event] | ||
// @Events | ||
// player chats | ||
// | ||
// @Updated 2016/10/18 | ||
// | ||
// @Cancellable true | ||
// | ||
// @Triggers when a player sends a chat message. | ||
// | ||
// @Context | ||
// player (PlayerTag) returns the player that sent the message. | ||
// message (FormattedTextTag) returns the chat message. | ||
// | ||
// @Determinations | ||
// None. | ||
// --> | ||
|
||
@Override | ||
public String getName() { | ||
return "PlayerChats"; | ||
} | ||
|
||
@Override | ||
public boolean couldMatch(ScriptEventData data) { | ||
return data.eventPath.startsWith("player chats"); | ||
} | ||
|
||
@Override | ||
public boolean matches(ScriptEventData data) { | ||
return true; | ||
} | ||
|
||
public PlayerTag player; | ||
|
||
public FormattedTextTag message; | ||
|
||
public MessageChannelEvent.Chat internal; | ||
|
||
@Override | ||
public HashMap<String, AbstractTagObject> getDefinitions(ScriptEventData data) { | ||
HashMap<String, AbstractTagObject> defs = super.getDefinitions(data); | ||
defs.put("player", player); | ||
defs.put("message", message); | ||
return defs; | ||
} | ||
|
||
@Override | ||
public void enable() { | ||
Sponge.getEventManager().registerListeners(Denizen2Sponge.instance, this); | ||
} | ||
|
||
@Override | ||
public void disable() { | ||
Sponge.getEventManager().unregisterListeners(this); | ||
} | ||
|
||
@Listener | ||
public void onChat(MessageChannelEvent.Chat evt, @Root Player player) { | ||
PlayerChatsScriptEvent event = (PlayerChatsScriptEvent) clone(); | ||
event.internal = evt; | ||
event.player = new PlayerTag(player); | ||
event.message = new FormattedTextTag(evt.getRawMessage()); | ||
event.cancelled = evt.isCancelled(); | ||
event.run(); | ||
evt.setCancelled(event.cancelled); | ||
} | ||
|
||
@Override | ||
public void applyDetermination(boolean errors, String determination, AbstractTagObject value) { | ||
super.applyDetermination(errors, determination, value); | ||
} | ||
} | ||
package com.denizenscript.denizen2sponge.events.player; | ||
|
||
import com.denizenscript.denizen2core.events.ScriptEvent; | ||
import com.denizenscript.denizen2core.tags.AbstractTagObject; | ||
import com.denizenscript.denizen2sponge.Denizen2Sponge; | ||
import com.denizenscript.denizen2sponge.tags.objects.FormattedTextTag; | ||
import com.denizenscript.denizen2sponge.tags.objects.PlayerTag; | ||
import org.spongepowered.api.Sponge; | ||
import org.spongepowered.api.entity.living.player.Player; | ||
import org.spongepowered.api.event.Listener; | ||
import org.spongepowered.api.event.filter.cause.Root; | ||
import org.spongepowered.api.event.message.MessageChannelEvent; | ||
|
||
import java.util.HashMap; | ||
|
||
public class PlayerChatsScriptEvent extends ScriptEvent { | ||
|
||
// <--[event] | ||
// @Events | ||
// player chats | ||
// | ||
// @Updated 2016/10/18 | ||
// | ||
// @Cancellable true | ||
// | ||
// @Triggers when a player sends a chat message. | ||
// | ||
// @Context | ||
// player (PlayerTag) returns the player that sent the message. | ||
// message (FormattedTextTag) returns the chat message. | ||
// | ||
// @Determinations | ||
// None. | ||
// --> | ||
|
||
@Override | ||
public String getName() { | ||
return "PlayerChats"; | ||
} | ||
|
||
@Override | ||
public boolean couldMatch(ScriptEventData data) { | ||
return data.eventPath.startsWith("player chats"); | ||
} | ||
|
||
@Override | ||
public boolean matches(ScriptEventData data) { | ||
return true; | ||
} | ||
|
||
public PlayerTag player; | ||
|
||
public FormattedTextTag message; | ||
|
||
public MessageChannelEvent.Chat internal; | ||
|
||
@Override | ||
public HashMap<String, AbstractTagObject> getDefinitions(ScriptEventData data) { | ||
HashMap<String, AbstractTagObject> defs = super.getDefinitions(data); | ||
defs.put("player", player); | ||
defs.put("message", message); | ||
return defs; | ||
} | ||
|
||
@Override | ||
public void enable() { | ||
Sponge.getEventManager().registerListeners(Denizen2Sponge.instance, this); | ||
} | ||
|
||
@Override | ||
public void disable() { | ||
Sponge.getEventManager().unregisterListeners(this); | ||
} | ||
|
||
@Listener | ||
public void onChat(MessageChannelEvent.Chat evt, @Root Player player) { | ||
PlayerChatsScriptEvent event = (PlayerChatsScriptEvent) clone(); | ||
event.internal = evt; | ||
event.player = new PlayerTag(player); | ||
event.message = new FormattedTextTag(evt.getRawMessage()); | ||
event.cancelled = evt.isCancelled(); | ||
event.run(); | ||
evt.setCancelled(event.cancelled); | ||
} | ||
|
||
@Override | ||
public void applyDetermination(boolean errors, String determination, AbstractTagObject value) { | ||
super.applyDetermination(errors, determination, value); | ||
} | ||
} |
88 changes: 88 additions & 0 deletions
88
src/main/java/com/denizenscript/denizen2sponge/events/player/PlayerJoinsScriptEvent.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,88 @@ | ||
package com.denizenscript.denizen2sponge.events.player; | ||
|
||
import com.denizenscript.denizen2core.events.ScriptEvent; | ||
import com.denizenscript.denizen2core.tags.AbstractTagObject; | ||
import com.denizenscript.denizen2sponge.Denizen2Sponge; | ||
import com.denizenscript.denizen2sponge.tags.objects.FormattedTextTag; | ||
import com.denizenscript.denizen2sponge.tags.objects.PlayerTag; | ||
import org.spongepowered.api.Sponge; | ||
import org.spongepowered.api.entity.living.player.Player; | ||
import org.spongepowered.api.event.Listener; | ||
import org.spongepowered.api.event.filter.cause.Root; | ||
import org.spongepowered.api.event.network.ClientConnectionEvent; | ||
|
||
import java.util.HashMap; | ||
|
||
public class PlayerJoinsScriptEvent extends ScriptEvent { | ||
|
||
// <--[event] | ||
// @Events | ||
// player chats | ||
This comment has been minimized.
Sorry, something went wrong.
This comment has been minimized.
Sorry, something went wrong. |
||
// | ||
// @Updated 2016/10/18 | ||
// | ||
// @Cancellable false | ||
// | ||
// @Triggers when a player successfully joins the server. | ||
// | ||
// @Context | ||
// player (PlayerTag) returns the player that joined. | ||
// message (FormattedTextTag) returns the message that will be broadcast to the server. | ||
// | ||
// @Determinations | ||
// None. | ||
// --> | ||
|
||
@Override | ||
public String getName() { | ||
return "PlayerJoins"; | ||
} | ||
|
||
@Override | ||
public boolean couldMatch(ScriptEventData data) { | ||
return data.eventPath.startsWith("player joins"); | ||
} | ||
|
||
@Override | ||
public boolean matches(ScriptEventData data) { | ||
return true; | ||
} | ||
|
||
public PlayerTag player; | ||
|
||
public FormattedTextTag message; | ||
|
||
public ClientConnectionEvent.Join internal; | ||
|
||
@Override | ||
public HashMap<String, AbstractTagObject> getDefinitions(ScriptEventData data) { | ||
HashMap<String, AbstractTagObject> defs = super.getDefinitions(data); | ||
defs.put("player", player); | ||
defs.put("message", message); | ||
return defs; | ||
} | ||
|
||
@Override | ||
public void enable() { | ||
Sponge.getEventManager().registerListeners(Denizen2Sponge.instance, this); | ||
} | ||
|
||
@Override | ||
public void disable() { | ||
Sponge.getEventManager().unregisterListeners(this); | ||
} | ||
|
||
@Listener | ||
public void onJoin(ClientConnectionEvent.Join evt, @Root Player player) { | ||
PlayerJoinsScriptEvent event = (PlayerJoinsScriptEvent) clone(); | ||
event.internal = evt; | ||
event.player = new PlayerTag(player); | ||
event.message = new FormattedTextTag(evt.getMessage()); | ||
event.run(); | ||
} | ||
|
||
@Override | ||
public void applyDetermination(boolean errors, String determination, AbstractTagObject value) { | ||
super.applyDetermination(errors, determination, value); | ||
} | ||
} |
ok