Skip to content

Commit

Permalink
feat: add on_command
Browse files Browse the repository at this point in the history
  • Loading branch information
wu-vincent committed Jul 11, 2024
1 parent 7739c43 commit aba4cfe
Show file tree
Hide file tree
Showing 2 changed files with 13 additions and 2 deletions.
3 changes: 2 additions & 1 deletion src/endstone_test/event_listener.py
Original file line number Diff line number Diff line change
Expand Up @@ -78,11 +78,12 @@ def send_welcome_message(player_name: str) -> None:

skin = event.player.skin
self._plugin.logger.info(f"Skin Id: {skin.skin_id}, Cape Id: {skin.cape_id}")
assert skin.skin_data.shape[2] == 4
assert skin.skin_data.shape[2] == 4, f"Bad shape for skin data: {skin.skin_data.shape}"
skin_path = Path(self._plugin.data_folder) / "skins"
skin_path.mkdir(parents=True, exist_ok=True)
Image.fromarray(skin.skin_data).save(skin_path / f"{event.player.name}.png")
if skin.cape_data is not None:
assert skin.cape_data.shape[2] == 4, f"Bad shape for cape data: {skin.cape_data.shape}"
Image.fromarray(skin.cape_data).save(skin_path / f"{event.player.name}_cape.png")

@event_handler
Expand Down
12 changes: 11 additions & 1 deletion src/endstone_test/plugin.py
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
import datetime
import uuid

from endstone import __minecraft_version__
from endstone import __minecraft_version__, Player
from endstone.command import Command, CommandSender, ConsoleCommandSender
from endstone.plugin import Plugin

from endstone_test.event_listener import EventListener
Expand Down Expand Up @@ -62,6 +63,15 @@ def on_enable(self) -> None:
def on_disable(self) -> None:
self.logger.info("on_disable is called!")

def on_command(self, sender: CommandSender, command: Command, args: list[str]) -> bool:
if isinstance(sender, ConsoleCommandSender):
sender.send_message("You are the console!")
elif isinstance(sender, Player):
sender.send_message("You are the player!")
else:
sender.send_message(f"You are {sender.__class__}!")
return True

def send_debug_message(self):
for player in self.server.online_players:
player.send_tip(
Expand Down

0 comments on commit aba4cfe

Please sign in to comment.