diff options
Diffstat (limited to 'tolua/generated.go')
-rw-r--r-- | tolua/generated.go | 684 |
1 files changed, 684 insertions, 0 deletions
diff --git a/tolua/generated.go b/tolua/generated.go new file mode 100644 index 0000000..ec53231 --- /dev/null +++ b/tolua/generated.go @@ -0,0 +1,684 @@ +// generated by generate.lua, DO NOT EDIT +package tolua + +import ( + "github.com/anon55555/mt" + "github.com/yuin/gopher-lua" +) + +func AnimType(l *lua.LState, val mt.AnimType) lua.LValue { + switch val { + case mt.NoAnim: + return lua.LNil + case mt.VerticalFrameAnim: + return lua.LString("vertical_frame") + case mt.SpriteSheetAnim: + return lua.LString("sprite_sheet") + } + panic("impossible") + return lua.LNil +} + +func ChatMsgType(l *lua.LState, val mt.ChatMsgType) lua.LValue { + switch val { + case mt.RawMsg: + return lua.LString("raw") + case mt.NormalMsg: + return lua.LString("normal") + case mt.AnnounceMsg: + return lua.LString("announce") + case mt.SysMsg: + return lua.LString("sys") + } + panic("impossible") + return lua.LNil +} + +func HotbarParam(l *lua.LState, val mt.HotbarParam) lua.LValue { + switch val { + case mt.HotbarSize: + return lua.LString("size") + case mt.HotbarImg: + return lua.LString("img") + case mt.HotbarSelImg: + return lua.LString("sel_img") + } + panic("impossible") + return lua.LNil +} + +func HUDField(l *lua.LState, val mt.HUDField) lua.LValue { + switch val { + case mt.HUDPos: + return lua.LString("pos") + case mt.HUDName: + return lua.LString("name") + case mt.HUDScale: + return lua.LString("scale") + case mt.HUDText: + return lua.LString("text") + case mt.HUDNumber: + return lua.LString("number") + case mt.HUDItem: + return lua.LString("item") + case mt.HUDDir: + return lua.LString("dir") + case mt.HUDAlign: + return lua.LString("align") + case mt.HUDOffset: + return lua.LString("offset") + case mt.HUDWorldPos: + return lua.LString("world_pos") + case mt.HUDSize: + return lua.LString("size") + case mt.HUDZIndex: + return lua.LString("z_index") + case mt.HUDText2: + return lua.LString("text_2") + } + panic("impossible") + return lua.LNil +} + +func HUDType(l *lua.LState, val mt.HUDType) lua.LValue { + switch val { + case mt.ImgHUD: + return lua.LString("img") + case mt.TextHUD: + return lua.LString("text") + case mt.StatbarHUD: + return lua.LString("statbar") + case mt.InvHUD: + return lua.LString("inv") + case mt.WaypointHUD: + return lua.LString("waypoint") + case mt.ImgWaypointHUD: + return lua.LString("img_waypoint") + } + panic("impossible") + return lua.LNil +} + +func KickReason(l *lua.LState, val mt.KickReason) lua.LValue { + switch val { + case mt.WrongPasswd: + return lua.LString("wrong_passwd") + case mt.UnexpectedData: + return lua.LString("unexpected_data") + case mt.SrvIsSingleplayer: + return lua.LString("srv_is_singleplayer") + case mt.UnsupportedVer: + return lua.LString("unsupported_ver") + case mt.BadNameChars: + return lua.LString("bad_name_chars") + case mt.BadName: + return lua.LString("bad_name") + case mt.TooManyClts: + return lua.LString("too_many_clts") + case mt.EmptyPasswd: + return lua.LString("empty_passwd") + case mt.AlreadyConnected: + return lua.LString("already_connected") + case mt.SrvErr: + return lua.LString("srv_err") + case mt.Custom: + return lua.LString("custom") + case mt.Shutdown: + return lua.LString("shutdown") + case mt.Crash: + return lua.LString("crash") + } + panic("impossible") + return lua.LNil +} + +func ModChanSig(l *lua.LState, val mt.ModChanSig) lua.LValue { + switch val { + case mt.JoinOK: + return lua.LString("join_ok") + case mt.JoinFail: + return lua.LString("join_fail") + case mt.LeaveOK: + return lua.LString("leave_ok") + case mt.LeaveFail: + return lua.LString("leave_fail") + case mt.NotRegistered: + return lua.LString("not_registered") + case mt.SetState: + return lua.LString("set_state") + } + panic("impossible") + return lua.LNil +} + +func PlayerListUpdateType(l *lua.LState, val mt.PlayerListUpdateType) lua.LValue { + switch val { + case mt.InitPlayers: + return lua.LString("init") + case mt.AddPlayers: + return lua.LString("add") + case mt.RemovePlayers: + return lua.LString("remove") + } + panic("impossible") + return lua.LNil +} + +func SoundSrcType(l *lua.LState, val mt.SoundSrcType) lua.LValue { + switch val { + case mt.NoSrc: + return lua.LNil + case mt.PosSrc: + return lua.LString("pos") + case mt.AOSrc: + return lua.LString("ao") + } + panic("impossible") + return lua.LNil +} + +func AuthMethods(l *lua.LState, val mt.AuthMethods) lua.LValue { + tbl := l.NewTable() + if val&mt.LegacyPasswd != 0 { + l.SetField(tbl, "legacy_passwd", lua.LTrue) + } + if val&mt.SRP != 0 { + l.SetField(tbl, "srp", lua.LTrue) + } + if val&mt.FirstSRP != 0 { + l.SetField(tbl, "first_srp", lua.LTrue) + } + return tbl +} + +func CSMRestrictionFlags(l *lua.LState, val mt.CSMRestrictionFlags) lua.LValue { + tbl := l.NewTable() + if val&mt.NoCSMs != 0 { + l.SetField(tbl, "no_csms", lua.LTrue) + } + if val&mt.NoChatMsgs != 0 { + l.SetField(tbl, "no_chat_msgs", lua.LTrue) + } + if val&mt.NoNodeDefs != 0 { + l.SetField(tbl, "no_node_defs", lua.LTrue) + } + if val&mt.LimitMapRange != 0 { + l.SetField(tbl, "limit_map_range", lua.LTrue) + } + if val&mt.NoPlayerList != 0 { + l.SetField(tbl, "no_player_list", lua.LTrue) + } + return tbl +} + +func HUDFlags(l *lua.LState, val mt.HUDFlags) lua.LValue { + tbl := l.NewTable() + if val&mt.ShowHotbar != 0 { + l.SetField(tbl, "hotbar", lua.LTrue) + } + if val&mt.ShowHealthBar != 0 { + l.SetField(tbl, "health_bar", lua.LTrue) + } + if val&mt.ShowCrosshair != 0 { + l.SetField(tbl, "crosshair", lua.LTrue) + } + if val&mt.ShowWieldedItem != 0 { + l.SetField(tbl, "wielded_item", lua.LTrue) + } + if val&mt.ShowBreathBar != 0 { + l.SetField(tbl, "breath_bar", lua.LTrue) + } + if val&mt.ShowMinimap != 0 { + l.SetField(tbl, "minimap", lua.LTrue) + } + if val&mt.ShowRadarMinimap != 0 { + l.SetField(tbl, "radar_minimap", lua.LTrue) + } + return tbl +} + +func HUD(l *lua.LState, val mt.HUD) lua.LValue { + tbl := l.NewTable() + l.SetField(tbl, "align", Vec2(l, [2]lua.LNumber{lua.LNumber(val.Align[0]), lua.LNumber(val.Align[1])})) + l.SetField(tbl, "dir", lua.LNumber(val.Dir)) + l.SetField(tbl, "item", lua.LNumber(val.Item)) + l.SetField(tbl, "name", lua.LString(string(val.Name))) + l.SetField(tbl, "number", lua.LNumber(val.Number)) + l.SetField(tbl, "offset", Vec2(l, [2]lua.LNumber{lua.LNumber(val.Offset[0]), lua.LNumber(val.Offset[1])})) + l.SetField(tbl, "pos", Vec2(l, [2]lua.LNumber{lua.LNumber(val.Pos[0]), lua.LNumber(val.Pos[1])})) + l.SetField(tbl, "scale", Vec2(l, [2]lua.LNumber{lua.LNumber(val.Scale[0]), lua.LNumber(val.Scale[1])})) + l.SetField(tbl, "size", Vec2(l, [2]lua.LNumber{lua.LNumber(val.Size[0]), lua.LNumber(val.Size[1])})) + l.SetField(tbl, "text", lua.LString(string(val.Text))) + l.SetField(tbl, "text_2", lua.LString(string(val.Text2))) + l.SetField(tbl, "type", HUDType(l, val.Type)) + l.SetField(tbl, "world_pos", Vec3(l, [3]lua.LNumber{lua.LNumber(val.WorldPos[0]), lua.LNumber(val.WorldPos[1]), lua.LNumber(val.WorldPos[2])})) + l.SetField(tbl, "z_index", lua.LNumber(val.ZIndex)) + return tbl +} + +func Node(l *lua.LState, val mt.Node) lua.LValue { + tbl := l.NewTable() + l.SetField(tbl, "param0", lua.LNumber(val.Param0)) + l.SetField(tbl, "param1", lua.LNumber(val.Param1)) + l.SetField(tbl, "param2", lua.LNumber(val.Param2)) + return tbl +} + +func TileAnim(l *lua.LState, val mt.TileAnim) lua.LValue { + tbl := l.NewTable() + l.SetField(tbl, "aspect_ratio", Vec2(l, [2]lua.LNumber{lua.LNumber(val.AspectRatio[0]), lua.LNumber(val.AspectRatio[1])})) + l.SetField(tbl, "duration", lua.LNumber(val.Duration)) + l.SetField(tbl, "n_frames", Vec2(l, [2]lua.LNumber{lua.LNumber(val.NFrames[0]), lua.LNumber(val.NFrames[1])})) + l.SetField(tbl, "type", AnimType(l, val.Type)) + return tbl +} + +func PktType(pkt *mt.Pkt) lua.LString { + switch pkt.Cmd.(type) { + case *mt.ToCltAcceptAuth: + return lua.LString("accept_auth") + case *mt.ToCltAcceptSudoMode: + return lua.LString("accept_sudo_mode") + case *mt.ToCltAddHUD: + return lua.LString("add_hud") + case *mt.ToCltAddNode: + return lua.LString("add_node") + case *mt.ToCltAddParticleSpawner: + return lua.LString("add_particle_spawner") + case *mt.ToCltAddPlayerVel: + return lua.LString("add_player_vel") + case *mt.ToCltAnnounceMedia: + return lua.LString("announce_media") + case *mt.ToCltAOMsgs: + return lua.LString("ao_msgs") + case *mt.ToCltAORmAdd: + return lua.LString("ao_rm_add") + case *mt.ToCltBlkData: + return lua.LString("blk_data") + case *mt.ToCltBreath: + return lua.LString("breath") + case *mt.ToCltChangeHUD: + return lua.LString("change_hud") + case *mt.ToCltChatMsg: + return lua.LString("chat_msg") + case *mt.ToCltCloudParams: + return lua.LString("cloud_params") + case *mt.ToCltCSMRestrictionFlags: + return lua.LString("csm_restriction_flags") + case *mt.ToCltDeathScreen: + return lua.LString("death_screen") + case *mt.ToCltDelParticleSpawner: + return lua.LString("del_particle_spawner") + case *mt.ToCltDenySudoMode: + return lua.LString("deny_sudo_mode") + case *mt.ToCltDetachedInv: + return lua.LString("detached_inv") + case *mt.ToCltDisco: + return lua.LString("disco") + case *mt.ToCltEyeOffset: + return lua.LString("eye_offset") + case *mt.ToCltFadeSound: + return lua.LString("fade_sound") + case *mt.ToCltFormspecPrepend: + return lua.LString("formspec_prepend") + case *mt.ToCltFOV: + return lua.LString("fov") + case *mt.ToCltHello: + return lua.LString("hello") + case *mt.ToCltHP: + return lua.LString("hp") + case *mt.ToCltHUDFlags: + return lua.LString("hud_flags") + case *mt.ToCltInv: + return lua.LString("inv") + case *mt.ToCltInvFormspec: + return lua.LString("inv_formspec") + case *mt.ToCltItemDefs: + return lua.LString("item_defs") + case *mt.ToCltKick: + return lua.LString("kick") + case *mt.ToCltLegacyKick: + return lua.LString("legacy_kick") + case *mt.ToCltLocalPlayerAnim: + return lua.LString("local_player_anim") + case *mt.ToCltMedia: + return lua.LString("media") + case *mt.ToCltMediaPush: + return lua.LString("media_push") + case *mt.ToCltMinimapModes: + return lua.LString("minimap_modes") + case *mt.ToCltModChanMsg: + return lua.LString("mod_chan_msg") + case *mt.ToCltModChanSig: + return lua.LString("mod_chan_sig") + case *mt.ToCltMoonParams: + return lua.LString("moon_params") + case *mt.ToCltMovePlayer: + return lua.LString("move_player") + case *mt.ToCltMovement: + return lua.LString("movement") + case *mt.ToCltNodeDefs: + return lua.LString("node_defs") + case *mt.ToCltNodeMetasChanged: + return lua.LString("node_metas_changed") + case *mt.ToCltOverrideDayNightRatio: + return lua.LString("override_day_night_ratio") + case *mt.ToCltPlaySound: + return lua.LString("play_sound") + case *mt.ToCltPrivs: + return lua.LString("privs") + case *mt.ToCltRemoveNode: + return lua.LString("remove_node") + case *mt.ToCltRmHUD: + return lua.LString("rm_hud") + case *mt.ToCltSetHotbarParam: + return lua.LString("set_hotbar_param") + case *mt.ToCltShowFormspec: + return lua.LString("show_formspec") + case *mt.ToCltSkyParams: + return lua.LString("sky_params") + case *mt.ToCltSpawnParticle: + return lua.LString("spawn_particle") + case *mt.ToCltSRPBytesSaltB: + return lua.LString("srp_bytes_salt_b") + case *mt.ToCltStarParams: + return lua.LString("star_params") + case *mt.ToCltStopSound: + return lua.LString("stop_sound") + case *mt.ToCltSunParams: + return lua.LString("sun_params") + case *mt.ToCltTimeOfDay: + return lua.LString("time_of_day") + case *mt.ToCltUpdatePlayerList: + return lua.LString("update_player_list") + } + panic("impossible") + return "" +} + +func Pkt(l *lua.LState, pkt *mt.Pkt) lua.LValue { + if pkt == nil { + return lua.LNil + } + tbl := l.NewTable() + l.SetField(tbl, "_type", PktType(pkt)) + switch val := pkt.Cmd.(type) { + case *mt.ToCltAcceptAuth: + l.SetField(tbl, "map_seed", lua.LNumber(val.MapSeed)) + l.SetField(tbl, "player_pos", Vec3(l, [3]lua.LNumber{lua.LNumber(val.PlayerPos[0]), lua.LNumber(val.PlayerPos[1]), lua.LNumber(val.PlayerPos[2])})) + l.SetField(tbl, "send_interval", lua.LNumber(val.SendInterval)) + l.SetField(tbl, "sudo_auth_methods", AuthMethods(l, val.SudoAuthMethods)) + case *mt.ToCltAddHUD: + l.SetField(tbl, "hud", HUD(l, val.HUD)) + l.SetField(tbl, "id", lua.LNumber(val.ID)) + case *mt.ToCltAddNode: + l.SetField(tbl, "keep_meta", lua.LBool(val.KeepMeta)) + l.SetField(tbl, "node", Node(l, val.Node)) + l.SetField(tbl, "pos", Vec3(l, [3]lua.LNumber{lua.LNumber(val.Pos[0]), lua.LNumber(val.Pos[1]), lua.LNumber(val.Pos[2])})) + case *mt.ToCltAddParticleSpawner: + l.SetField(tbl, "acc", Box3(l, [2][3]lua.LNumber{{lua.LNumber(val.Acc[0][0]), lua.LNumber(val.Acc[0][1]), lua.LNumber(val.Acc[0][2])}, {lua.LNumber(val.Acc[1][0]), lua.LNumber(val.Acc[1][1]), lua.LNumber(val.Acc[1][2])}})) + l.SetField(tbl, "amount", lua.LNumber(val.Amount)) + l.SetField(tbl, "anim_params", TileAnim(l, val.AnimParams)) + l.SetField(tbl, "ao_collision", lua.LBool(val.AOCollision)) + l.SetField(tbl, "collide", lua.LBool(val.Collide)) + l.SetField(tbl, "collision_rm", lua.LBool(val.CollisionRm)) + l.SetField(tbl, "duration", lua.LNumber(val.Duration)) + l.SetField(tbl, "expiration_time", Box1(l, [2]lua.LNumber{lua.LNumber(val.ExpirationTime[0]), lua.LNumber(val.ExpirationTime[1])})) + l.SetField(tbl, "glow", lua.LNumber(val.Glow)) + l.SetField(tbl, "id", lua.LNumber(val.ID)) + l.SetField(tbl, "node_param0", lua.LNumber(val.NodeParam0)) + l.SetField(tbl, "node_param2", lua.LNumber(val.NodeParam2)) + l.SetField(tbl, "node_tile", lua.LNumber(val.NodeTile)) + l.SetField(tbl, "pos", Box3(l, [2][3]lua.LNumber{{lua.LNumber(val.Pos[0][0]), lua.LNumber(val.Pos[0][1]), lua.LNumber(val.Pos[0][2])}, {lua.LNumber(val.Pos[1][0]), lua.LNumber(val.Pos[1][1]), lua.LNumber(val.Pos[1][2])}})) + l.SetField(tbl, "size", Box1(l, [2]lua.LNumber{lua.LNumber(val.Size[0]), lua.LNumber(val.Size[1])})) + l.SetField(tbl, "texture", lua.LString(string(val.Texture))) + l.SetField(tbl, "vel", Box3(l, [2][3]lua.LNumber{{lua.LNumber(val.Vel[0][0]), lua.LNumber(val.Vel[0][1]), lua.LNumber(val.Vel[0][2])}, {lua.LNumber(val.Vel[1][0]), lua.LNumber(val.Vel[1][1]), lua.LNumber(val.Vel[1][2])}})) + l.SetField(tbl, "vertical", lua.LBool(val.Vertical)) + case *mt.ToCltAddPlayerVel: + l.SetField(tbl, "vel", Vec3(l, [3]lua.LNumber{lua.LNumber(val.Vel[0]), lua.LNumber(val.Vel[1]), lua.LNumber(val.Vel[2])})) + case *mt.ToCltBlkData: + l.SetField(tbl, "blkpos", Vec3(l, [3]lua.LNumber{lua.LNumber(val.Blkpos[0]), lua.LNumber(val.Blkpos[1]), lua.LNumber(val.Blkpos[2])})) + case *mt.ToCltBreath: + l.SetField(tbl, "breath", lua.LNumber(val.Breath)) + case *mt.ToCltChangeHUD: + if val.Field == mt.HUDAlign { + l.SetField(tbl, "align", Vec2(l, [2]lua.LNumber{lua.LNumber(val.Align[0]), lua.LNumber(val.Align[1])})) + } + if val.Field == mt.HUDDir { + l.SetField(tbl, "dir", lua.LNumber(val.Dir)) + } + l.SetField(tbl, "field", HUDField(l, val.Field)) + l.SetField(tbl, "id", lua.LNumber(val.ID)) + if val.Field == mt.HUDItem { + l.SetField(tbl, "item", lua.LNumber(val.Item)) + } + if val.Field == mt.HUDName { + l.SetField(tbl, "name", lua.LString(string(val.Name))) + } + if val.Field == mt.HUDNumber { + l.SetField(tbl, "number", lua.LNumber(val.Number)) + } + if val.Field == mt.HUDOffset { + l.SetField(tbl, "offset", Vec2(l, [2]lua.LNumber{lua.LNumber(val.Offset[0]), lua.LNumber(val.Offset[1])})) + } + if val.Field == mt.HUDPos { + l.SetField(tbl, "pos", Vec2(l, [2]lua.LNumber{lua.LNumber(val.Pos[0]), lua.LNumber(val.Pos[1])})) + } + if val.Field == mt.HUDSize { + l.SetField(tbl, "size", Vec2(l, [2]lua.LNumber{lua.LNumber(val.Size[0]), lua.LNumber(val.Size[1])})) + } + if val.Field == mt.HUDText { + l.SetField(tbl, "text", lua.LString(string(val.Text))) + } + if val.Field == mt.HUDText2 { + l.SetField(tbl, "text_2", lua.LString(string(val.Text2))) + } + if val.Field == mt.HUDWorldPos { + l.SetField(tbl, "world_pos", Vec3(l, [3]lua.LNumber{lua.LNumber(val.WorldPos[0]), lua.LNumber(val.WorldPos[1]), lua.LNumber(val.WorldPos[2])})) + } + if val.Field == mt.HUDZIndex { + l.SetField(tbl, "z_index", lua.LNumber(val.ZIndex)) + } + case *mt.ToCltChatMsg: + l.SetField(tbl, "sender", lua.LString(string(val.Sender))) + l.SetField(tbl, "text", lua.LString(string(val.Text))) + l.SetField(tbl, "timestamp", lua.LNumber(val.Timestamp)) + l.SetField(tbl, "type", ChatMsgType(l, val.Type)) + case *mt.ToCltCloudParams: + l.SetField(tbl, "ambient_color", Color(l, val.AmbientColor)) + l.SetField(tbl, "density", lua.LNumber(val.Density)) + l.SetField(tbl, "diffuse_color", Color(l, val.DiffuseColor)) + l.SetField(tbl, "height", lua.LNumber(val.Height)) + l.SetField(tbl, "speed", Vec2(l, [2]lua.LNumber{lua.LNumber(val.Speed[0]), lua.LNumber(val.Speed[1])})) + l.SetField(tbl, "thickness", lua.LNumber(val.Thickness)) + case *mt.ToCltCSMRestrictionFlags: + l.SetField(tbl, "flags", CSMRestrictionFlags(l, val.Flags)) + l.SetField(tbl, "map_range", lua.LNumber(val.MapRange)) + case *mt.ToCltDeathScreen: + l.SetField(tbl, "point_at", Vec3(l, [3]lua.LNumber{lua.LNumber(val.PointAt[0]), lua.LNumber(val.PointAt[1]), lua.LNumber(val.PointAt[2])})) + l.SetField(tbl, "point_cam", lua.LBool(val.PointCam)) + case *mt.ToCltDelParticleSpawner: + l.SetField(tbl, "id", lua.LNumber(val.ID)) + case *mt.ToCltDetachedInv: + l.SetField(tbl, "inv", lua.LString(string(val.Inv))) + l.SetField(tbl, "keep", lua.LBool(val.Keep)) + l.SetField(tbl, "len", lua.LNumber(val.Len)) + l.SetField(tbl, "name", lua.LString(string(val.Name))) + case *mt.ToCltEyeOffset: + l.SetField(tbl, "first", Vec3(l, [3]lua.LNumber{lua.LNumber(val.First[0]), lua.LNumber(val.First[1]), lua.LNumber(val.First[2])})) + l.SetField(tbl, "third", Vec3(l, [3]lua.LNumber{lua.LNumber(val.Third[0]), lua.LNumber(val.Third[1]), lua.LNumber(val.Third[2])})) + case *mt.ToCltFadeSound: + l.SetField(tbl, "gain", lua.LNumber(val.Gain)) + l.SetField(tbl, "id", lua.LNumber(val.ID)) + l.SetField(tbl, "step", lua.LNumber(val.Step)) + case *mt.ToCltFormspecPrepend: + l.SetField(tbl, "prepend", lua.LString(string(val.Prepend))) + case *mt.ToCltFOV: + l.SetField(tbl, "fov", lua.LNumber(val.FOV)) + l.SetField(tbl, "multiplier", lua.LBool(val.Multiplier)) + l.SetField(tbl, "transition_time", lua.LNumber(val.TransitionTime)) + case *mt.ToCltHello: + l.SetField(tbl, "auth_methods", AuthMethods(l, val.AuthMethods)) + l.SetField(tbl, "compression", lua.LNumber(val.Compression)) + l.SetField(tbl, "proto_ver", lua.LNumber(val.ProtoVer)) + l.SetField(tbl, "serialize_ver", lua.LNumber(val.SerializeVer)) + l.SetField(tbl, "username", lua.LString(string(val.Username))) + case *mt.ToCltHP: + l.SetField(tbl, "hp", lua.LNumber(val.HP)) + case *mt.ToCltHUDFlags: + l.SetField(tbl, "flags", HUDFlags(l, val.Flags)) + l.SetField(tbl, "mask", HUDFlags(l, val.Mask)) + case *mt.ToCltInv: + l.SetField(tbl, "inv", lua.LString(string(val.Inv))) + case *mt.ToCltInvFormspec: + l.SetField(tbl, "formspec", lua.LString(string(val.Formspec))) + case *mt.ToCltKick: + if val.Reason == mt.Custom || val.Reason == mt.Shutdown || val.Reason == mt.Crash { + l.SetField(tbl, "custom", lua.LString(string(val.Custom))) + } + l.SetField(tbl, "reason", KickReason(l, val.Reason)) + if val.Reason == mt.Shutdown || val.Reason == mt.Crash { + l.SetField(tbl, "reconnect", lua.LBool(val.Reconnect)) + } + case *mt.ToCltLegacyKick: + l.SetField(tbl, "reason", lua.LString(string(val.Reason))) + case *mt.ToCltLocalPlayerAnim: + l.SetField(tbl, "dig", Box1(l, [2]lua.LNumber{lua.LNumber(val.Dig[0]), lua.LNumber(val.Dig[1])})) + l.SetField(tbl, "idle", Box1(l, [2]lua.LNumber{lua.LNumber(val.Idle[0]), lua.LNumber(val.Idle[1])})) + l.SetField(tbl, "speed", lua.LNumber(val.Speed)) + l.SetField(tbl, "walk", Box1(l, [2]lua.LNumber{lua.LNumber(val.Walk[0]), lua.LNumber(val.Walk[1])})) + l.SetField(tbl, "walk_dig", Box1(l, [2]lua.LNumber{lua.LNumber(val.WalkDig[0]), lua.LNumber(val.WalkDig[1])})) + case *mt.ToCltMediaPush: + l.SetField(tbl, "data", lua.LString(string(val.Data))) + l.SetField(tbl, "filename", lua.LString(string(val.Filename))) + l.SetField(tbl, "sha1", lua.LString(string(val.SHA1[:]))) + l.SetField(tbl, "should_cache", lua.LBool(val.ShouldCache)) + case *mt.ToCltModChanMsg: + l.SetField(tbl, "channel", lua.LString(string(val.Channel))) + l.SetField(tbl, "msg", lua.LString(string(val.Msg))) + l.SetField(tbl, "sender", lua.LString(string(val.Sender))) + case *mt.ToCltModChanSig: + l.SetField(tbl, "channel", lua.LString(string(val.Channel))) + l.SetField(tbl, "signal", ModChanSig(l, val.Signal)) + case *mt.ToCltMoonParams: + l.SetField(tbl, "size", lua.LNumber(val.Size)) + l.SetField(tbl, "texture", lua.LString(string(val.Texture))) + l.SetField(tbl, "tone_map", lua.LString(string(val.ToneMap))) + l.SetField(tbl, "visible", lua.LBool(val.Visible)) + case *mt.ToCltMovePlayer: + l.SetField(tbl, "pitch", lua.LNumber(val.Pitch)) + l.SetField(tbl, "pos", Vec3(l, [3]lua.LNumber{lua.LNumber(val.Pos[0]), lua.LNumber(val.Pos[1]), lua.LNumber(val.Pos[2])})) + l.SetField(tbl, "yaw", lua.LNumber(val.Yaw)) + case *mt.ToCltMovement: + l.SetField(tbl, "air_accel", lua.LNumber(val.AirAccel)) + l.SetField(tbl, "climb_speed", lua.LNumber(val.ClimbSpeed)) + l.SetField(tbl, "crouch_speed", lua.LNumber(val.CrouchSpeed)) + l.SetField(tbl, "default_accel", lua.LNumber(val.DefaultAccel)) + l.SetField(tbl, "fast_accel", lua.LNumber(val.FastAccel)) + l.SetField(tbl, "fast_speed", lua.LNumber(val.FastSpeed)) + l.SetField(tbl, "fluidity", lua.LNumber(val.Fluidity)) + l.SetField(tbl, "gravity", lua.LNumber(val.Gravity)) + l.SetField(tbl, "jump_speed", lua.LNumber(val.JumpSpeed)) + l.SetField(tbl, "sink", lua.LNumber(val.Sink)) + l.SetField(tbl, "smoothing", lua.LNumber(val.Smoothing)) + l.SetField(tbl, "walk_speed", lua.LNumber(val.WalkSpeed)) + case *mt.ToCltOverrideDayNightRatio: + l.SetField(tbl, "override", lua.LBool(val.Override)) + l.SetField(tbl, "ratio", lua.LNumber(val.Ratio)) + case *mt.ToCltPlaySound: + l.SetField(tbl, "ephemeral", lua.LBool(val.Ephemeral)) + l.SetField(tbl, "fade", lua.LNumber(val.Fade)) + l.SetField(tbl, "gain", lua.LNumber(val.Gain)) + l.SetField(tbl, "id", lua.LNumber(val.ID)) + l.SetField(tbl, "loop", lua.LBool(val.Loop)) + l.SetField(tbl, "name", lua.LString(string(val.Name))) + l.SetField(tbl, "pitch", lua.LNumber(val.Pitch)) + l.SetField(tbl, "pos", Vec3(l, [3]lua.LNumber{lua.LNumber(val.Pos[0]), lua.LNumber(val.Pos[1]), lua.LNumber(val.Pos[2])})) + l.SetField(tbl, "src_aoid", lua.LNumber(val.SrcAOID)) + l.SetField(tbl, "src_type", SoundSrcType(l, val.SrcType)) + case *mt.ToCltPrivs: + l.SetField(tbl, "privs", StringSet(l, val.Privs)) + case *mt.ToCltRemoveNode: + l.SetField(tbl, "pos", Vec3(l, [3]lua.LNumber{lua.LNumber(val.Pos[0]), lua.LNumber(val.Pos[1]), lua.LNumber(val.Pos[2])})) + case *mt.ToCltRmHUD: + l.SetField(tbl, "id", lua.LNumber(val.ID)) + case *mt.ToCltSetHotbarParam: + l.SetField(tbl, "img", lua.LString(string(val.Img))) + l.SetField(tbl, "param", HotbarParam(l, val.Param)) + l.SetField(tbl, "size", lua.LNumber(val.Size)) + case *mt.ToCltShowFormspec: + l.SetField(tbl, "formname", lua.LString(string(val.Formname))) + l.SetField(tbl, "formspec", lua.LString(string(val.Formspec))) + case *mt.ToCltSkyParams: + l.SetField(tbl, "bg_color", Color(l, val.BgColor)) + l.SetField(tbl, "clouds", lua.LBool(val.Clouds)) + if val.Type == "regular" { + l.SetField(tbl, "dawn_horizon", Color(l, val.DawnHorizon)) + } + if val.Type == "regular" { + l.SetField(tbl, "dawn_sky", Color(l, val.DawnSky)) + } + if val.Type == "regular" { + l.SetField(tbl, "day_horizon", Color(l, val.DayHorizon)) + } + if val.Type == "regular" { + l.SetField(tbl, "day_sky", Color(l, val.DaySky)) + } + l.SetField(tbl, "fog_tint_type", lua.LString(string(val.FogTintType))) + if val.Type == "regular" { + l.SetField(tbl, "indoor", Color(l, val.Indoor)) + } + l.SetField(tbl, "moon_fog_tint", Color(l, val.MoonFogTint)) + if val.Type == "regular" { + l.SetField(tbl, "night_horizon", Color(l, val.NightHorizon)) + } + if val.Type == "regular" { + l.SetField(tbl, "night_sky", Color(l, val.NightSky)) + } + l.SetField(tbl, "sun_fog_tint", Color(l, val.SunFogTint)) + if val.Type == "skybox" { + l.SetField(tbl, "textures", TextureList(l, val.Textures)) + } + l.SetField(tbl, "type", lua.LString(string(val.Type))) + case *mt.ToCltSpawnParticle: + l.SetField(tbl, "acc", Vec3(l, [3]lua.LNumber{lua.LNumber(val.Acc[0]), lua.LNumber(val.Acc[1]), lua.LNumber(val.Acc[2])})) + l.SetField(tbl, "anim_params", TileAnim(l, val.AnimParams)) + l.SetField(tbl, "ao_collision", lua.LBool(val.AOCollision)) + l.SetField(tbl, "collide", lua.LBool(val.Collide)) + l.SetField(tbl, "collision_rm", lua.LBool(val.CollisionRm)) + l.SetField(tbl, "expiration_time", lua.LNumber(val.ExpirationTime)) + l.SetField(tbl, "glow", lua.LNumber(val.Glow)) + l.SetField(tbl, "node_param0", lua.LNumber(val.NodeParam0)) + l.SetField(tbl, "node_param2", lua.LNumber(val.NodeParam2)) + l.SetField(tbl, "node_tile", lua.LNumber(val.NodeTile)) + l.SetField(tbl, "pos", Vec3(l, [3]lua.LNumber{lua.LNumber(val.Pos[0]), lua.LNumber(val.Pos[1]), lua.LNumber(val.Pos[2])})) + l.SetField(tbl, "size", lua.LNumber(val.Size)) + l.SetField(tbl, "texture", lua.LString(string(val.Texture))) + l.SetField(tbl, "vel", Vec3(l, [3]lua.LNumber{lua.LNumber(val.Vel[0]), lua.LNumber(val.Vel[1]), lua.LNumber(val.Vel[2])})) + l.SetField(tbl, "vertical", lua.LBool(val.Vertical)) + case *mt.ToCltSRPBytesSaltB: + l.SetField(tbl, "b", lua.LString(string(val.B))) + l.SetField(tbl, "salt", lua.LString(string(val.Salt))) + case *mt.ToCltStarParams: + l.SetField(tbl, "color", Color(l, val.Color)) + l.SetField(tbl, "count", lua.LNumber(val.Count)) + l.SetField(tbl, "size", lua.LNumber(val.Size)) + l.SetField(tbl, "visible", lua.LBool(val.Visible)) + case *mt.ToCltStopSound: + l.SetField(tbl, "id", lua.LNumber(val.ID)) + case *mt.ToCltSunParams: + l.SetField(tbl, "rise", lua.LString(string(val.Rise))) + l.SetField(tbl, "rising", lua.LBool(val.Rising)) + l.SetField(tbl, "size", lua.LNumber(val.Size)) + l.SetField(tbl, "texture", lua.LString(string(val.Texture))) + l.SetField(tbl, "tone_map", lua.LString(string(val.ToneMap))) + l.SetField(tbl, "visible", lua.LBool(val.Visible)) + case *mt.ToCltTimeOfDay: + l.SetField(tbl, "speed", lua.LNumber(val.Speed)) + l.SetField(tbl, "time", lua.LNumber(val.Time)) + case *mt.ToCltUpdatePlayerList: + l.SetField(tbl, "players", StringList(l, val.Players)) + l.SetField(tbl, "type", PlayerListUpdateType(l, val.Type)) + } + return tbl +} |