Modding:Moddable Mod: Difference between revisions

From Vintage Story Wiki
m
Updated to 1.19.4. Using new command api.
(Marked this version for translation)
m (Updated to 1.19.4. Using new command api.)
 
Line 1: Line 1:
<languages/><translate>
<languages/><translate>
<!--T:1-->
<!--T:1-->
{{GameVersion|1.15}}
{{GameVersion|1.19.4}}
__FORCETOC__
__FORCETOC__
This article requires a setup development environment. If you don't have one, read the tutorial
This article requires a setup development environment. If you don't have one, read the tutorial
Line 214: Line 214:
             base.StartServerSide(api);
             base.StartServerSide(api);


             <!--T:32-->
             api.ChatCommands.Create("spawn")
api.RegisterCommand("spawn", "Teleport to spawn", "", OnCmdSpawn);
                .WithDescription("Teleport to spawn")
                .RequiresPlayer()
                .RequiresPrivilege(Privilege.chat)
                .HandleWith(OnCmdSpawn);
         }
         }


         <!--T:33-->
         <!--T:33-->
private void OnCmdSpawn(IServerPlayer player, int groupId, CmdArgs args)
        private TextCommandResult OnCmdSpawn(TextCommandCallingArgs args)
         {
         {
             player.Entity.TeleportTo(player.SpawnPosition);
            //Spawn position is stored on the server - Our command is called on the server so we can turn our IPlayer into IServerPlayer.
            IServerPlayer player = args.Caller.Player as IServerPlayer;
             player.Entity.TeleportTo(player.GetSpawnPosition(false));
            return TextCommandResult.Success();
         }
         }
     }
     }
Line 255: Line 261:
             base.StartServerSide(api);
             base.StartServerSide(api);


             <!--T:39-->
             api.ChatCommands.Create("spawn")
api.RegisterCommand("spawn", "Teleport to spawn", "", OnCmdSpawn);
                .WithDescription("Teleport to spawn")
 
                .RequiresPlayer()
             <!--T:40-->
                .RequiresPrivilege(Privilege.chat)
using tipmod.src;
                .HandleWith(OnCmdSpawn);
           
             using tipmod.src;
             TipMod tipMod = api.ModLoader.GetModSystem<TipMod>();
             TipMod tipMod = api.ModLoader.GetModSystem<TipMod>();
             tipMod.AddTip(new Tip("codemeister32", "To quickly return to spawn, type /spawn"));
             tipMod.AddTip(new Tip("codemeister32", "To quickly return to spawn, type /spawn"));
Line 391: Line 399:
             base.StartServerSide(api);
             base.StartServerSide(api);


             <!--T:58-->
             api.ChatCommands.Create("spawn")
api.RegisterCommand("spawn", "Teleport to spawn", "", OnCmdSpawn);
                .WithDescription("Teleport to spawn")
                .RequiresPlayer()
                .RequiresPrivilege(Privilege.chat)
                .HandleWith(OnCmdSpawn);


             <!--T:59-->
             TipMod tipMod = api.ModLoader.GetModSystem<TipMod>();
TipMod tipMod = api.ModLoader.GetModSystem<TipMod>();
             tipMod.AddTip(new Tip("codemeister32", "To quickly return to spawn, type /spawn"));
 
             <!--T:60-->
tipMod.AddTip(new Tip("codemeister32", "To quickly return to spawn, type /spawn"));
             tipMod.AddTip(new Tip("codemeister32", "Can't find your way home? Type /spawn"));
             tipMod.AddTip(new Tip("codemeister32", "Can't find your way home? Type /spawn"));
             tipMod.AddTip(new Tip("codemeister32", "Being chased by wolves? Quick, type /spawn"));
             tipMod.AddTip(new Tip("codemeister32", "Being chased by wolves? Quick, type /spawn"));
         }
         }


         <!--T:61-->
         private TextCommandResult OnCmdSpawn(TextCommandCallingArgs args)
private void OnCmdSpawn(IServerPlayer player, int groupId, CmdArgs args)
         {
         {
             player.Entity.TeleportTo(player.SpawnPosition);
            //Spawn position is stored on the server - Our command is called on the server so we can turn our IPlayer into IServerPlayer.
            IServerPlayer player = args.Caller.Player as IServerPlayer;
             player.Entity.TeleportTo(player.GetSpawnPosition(false));
            return TextCommandResult.Success();
         }
         }
     }
     }
Confirmedusers
556

edits