v0.0.1-Alpha (#42)
This commit is contained in:
parent
d30f93c454
commit
a36796c2c1
3552 changed files with 2476 additions and 15223 deletions
85
Projects/Scripts/Mobiles/Monsters/Ants/SolenHelper.cs
Normal file
85
Projects/Scripts/Mobiles/Monsters/Ants/SolenHelper.cs
Normal file
|
|
@ -0,0 +1,85 @@
|
|||
using Server.Items;
|
||||
using Server.Network;
|
||||
|
||||
namespace Server.Mobiles
|
||||
{
|
||||
public class SolenHelper
|
||||
{
|
||||
public static void PackPicnicBasket(BaseCreature solen)
|
||||
{
|
||||
if (1 > Utility.Random(100))
|
||||
{
|
||||
PicnicBasket basket = new PicnicBasket();
|
||||
|
||||
basket.DropItem(new BeverageBottle(BeverageType.Wine));
|
||||
basket.DropItem(new CheeseWedge());
|
||||
|
||||
solen.PackItem(basket);
|
||||
}
|
||||
}
|
||||
|
||||
public static bool CheckRedFriendship(Mobile m)
|
||||
{
|
||||
if (m is BaseCreature bc)
|
||||
{
|
||||
if (bc.Controlled && bc.ControlMaster is PlayerMobile)
|
||||
return CheckRedFriendship(bc.ControlMaster);
|
||||
if (bc.Summoned && bc.SummonMaster is PlayerMobile)
|
||||
return CheckRedFriendship(bc.SummonMaster);
|
||||
}
|
||||
|
||||
return m is PlayerMobile player && player.SolenFriendship == SolenFriendship.Red;
|
||||
}
|
||||
|
||||
public static bool CheckBlackFriendship(Mobile m)
|
||||
{
|
||||
if (m is BaseCreature bc)
|
||||
{
|
||||
if (bc.Controlled && bc.ControlMaster is PlayerMobile)
|
||||
return CheckBlackFriendship(bc.ControlMaster);
|
||||
if (bc.Summoned && bc.SummonMaster is PlayerMobile)
|
||||
return CheckBlackFriendship(bc.SummonMaster);
|
||||
}
|
||||
|
||||
return m is PlayerMobile player && player.SolenFriendship == SolenFriendship.Black;
|
||||
}
|
||||
|
||||
public static void OnRedDamage(Mobile from)
|
||||
{
|
||||
if (from is BaseCreature bc)
|
||||
{
|
||||
if (bc.Controlled && bc.ControlMaster is PlayerMobile)
|
||||
OnRedDamage(bc.ControlMaster);
|
||||
else if (bc.Summoned && bc.SummonMaster is PlayerMobile)
|
||||
OnRedDamage(bc.SummonMaster);
|
||||
}
|
||||
|
||||
if (from is PlayerMobile player && player.SolenFriendship == SolenFriendship.Red)
|
||||
{
|
||||
player.LocalOverheadMessage(MessageType.Regular, 0x3B2,
|
||||
1054103); // The solen revoke their friendship. You will now be considered an intruder.
|
||||
|
||||
player.SolenFriendship = SolenFriendship.None;
|
||||
}
|
||||
}
|
||||
|
||||
public static void OnBlackDamage(Mobile from)
|
||||
{
|
||||
if (from is BaseCreature bc)
|
||||
{
|
||||
if (bc.Controlled && bc.ControlMaster is PlayerMobile)
|
||||
OnBlackDamage(bc.ControlMaster);
|
||||
else if (bc.Summoned && bc.SummonMaster is PlayerMobile)
|
||||
OnBlackDamage(bc.SummonMaster);
|
||||
}
|
||||
|
||||
if (from is PlayerMobile player && player.SolenFriendship == SolenFriendship.Black)
|
||||
{
|
||||
player.LocalOverheadMessage(MessageType.Regular, 0x3B2,
|
||||
1054103); // The solen revoke their friendship. You will now be considered an intruder.
|
||||
|
||||
player.SolenFriendship = SolenFriendship.None;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue