Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
25 changes: 18 additions & 7 deletions BMConfig.cs
Original file line number Diff line number Diff line change
Expand Up @@ -8,13 +8,7 @@
using System.Collections.Generic;
using System.ComponentModel;
using System.Linq;
using System.Runtime.Serialization;
using Terraria;
using Terraria.ID;
using Terraria.ModLoader;
using Terraria.ModLoader.Config;
using Terraria.ModLoader.Config.UI;
using Terraria.UI;


namespace BetterMultiplayer
Expand Down Expand Up @@ -45,5 +39,22 @@ public class BMConfig : ModConfig
[DefaultValue(true)]
[Label("Witch Doctor sells Wormhole Potions")]
public bool WitchDoctorWormhole;
}

public override bool AcceptClientChanges(ModConfig pendingConfig, int whoAmI, ref string message)
{
if (BetterMultiplayer.instance.herosmod != null)
{
//find a better alternative?
if (BetterMultiplayer.instance.herosmod.Call("HasPermission", whoAmI, BetterMultiplayer.heropermission) is bool result && result)
{
return true;
}
}
else
{
return base.AcceptClientChanges(pendingConfig, whoAmI, ref message);
}
return false;
}
}
}
43 changes: 38 additions & 5 deletions BetterMultiplayer.cs
Original file line number Diff line number Diff line change
@@ -1,15 +1,48 @@
using Microsoft.Xna.Framework;
using Terraria;
using Terraria.ID;
using Terraria.ModLoader;


namespace BetterMultiplayer
{
public class BetterMultiplayer : Mod
{
public BetterMultiplayer()
public Mod herosmod;
public static BetterMultiplayer instance;
public const string heropermission = "BetterMultiplayer";
public const string heropermissiondisplayname = "Better Multiplayer Config";
public bool hasPermission;

public BetterMultiplayer()
{

}
}

public override void Load()
{
instance = this;
herosmod = ModLoader.GetMod("HEROsMod");
}
public override void Unload()
{
instance = null;
}

public override void PostAddRecipes()
{
SetupHerosMod();
}

public void SetupHerosMod()
{
if (herosmod != null)
{
herosmod.Call(
// Special string
"AddPermission",
// Permission Name
heropermission,
// Permission Display Name
heropermissiondisplayname);
}
}
}
}