using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace MinecraftClient.Scripting { public enum McClientEventType { /* Internal Events */ Initialize, ClientDisconnect, /* Tuple(reason, message) */ ClientTick, InternalCommand, NetworkPacket, /* Tuple(packetID, packetData, isLogin, isInbound) */ ServerTpsUpdate, /* double(tps) */ /* General in-game events */ BlockBreakAnimation, BlockChange, Enchantments, /* EnchantmentData(lastEnchantment) */ Explosion, /* Tuple(location, strength, affectedBlocks) */ GameJoin, MapDataReceive, PluginMessage, RainLevelChange, ScoreboardUpdate, ScoreUpdate, TextReceive, /* Tuple(messageText, message.content) */ ThunderLevelChange, TimeUpdate, /* Tuple(WorldAge, TimeOfDay) */ TitleReceive, /* TitlePacket(title) */ TradeListReceive, /* Player Events */ PlayerLatencyUpdate, /* Tuple(player, latency) */ PlayerJoin, /* PlayerInfo(player) */ PlayerKilled, /* Tuple(killer, chatMessage) */ PlayerLeave, /* Tuple(uuid, playerInfo) */ PlayerPropertyReceive, /* Dictionary(prop) */ PlayerStatusUpdate, /* byte(status) */ /* Player's own events */ Death, /* null */ ExperienceChange, /* Tuple(Experiencebar, Level, TotalExperience) */ GamemodeUpdate, /* Tuple(player, gamemode) */ HealthUpdate, /* Tuple(health, food) */ HeldItemChange, /* byte(slot) */ Respawn, /* Inventory-related events */ InventoryClose, /* int(inventoryID) */ InventoryOpen, /* int(inventoryID) */ InventoryProperties, /* Tuple(inventoryID, propertyId, propertyValue) */ InventoryUpdate, /* int(inventoryID) */ /* Entity-related events */ EntityAnimation, EntityDespawn, /* Entity(entity) */ EntityEffect, /* Tuple(entity, effect) */ EntityEquipment, /* Tuple(entity, slot, item) */ EntityHealth, EntityMetadata, EntityMove, /* Entity(entity) */ EntitySpawn, /* Entity(entity) */ }; }