OnVendingShopOpen
Usage
- Return a non-null value to override default behavior
Example Autogenerated
csharp
private object OnVendingShopOpen( InvisibleVendingMachine invisibleVendingMachine, BasePlayer player )
{
Puts( "OnVendingShopOpen works!" );
return null;
}csharp
private object OnVendingShopOpen( NPCVendingMachine vendingMachine, BasePlayer player )
{
Puts( "OnVendingShopOpen works!" );
return null;
}csharp
private object OnVendingShopOpen( VendingMachine instance, BasePlayer player )
{
Puts( "OnVendingShopOpen works!" );
return null;
}Location
- NPCTalking::OnConversationAction(BasePlayer player, string action)
- TravellingVendor::SV_OpenMenu(BaseEntity.RPCMessage msg)
- VendingMachine::RPC_OpenShop(BaseEntity.RPCMessage msg)
csharp
//---
{
InvisibleVendingMachine vendingMachine = GetVendingMachine();
if (vendingMachine != null && Vector3.Distance(player.transform.position, base.transform.position) < 5f)
{
ForceEndConversation(player);
if (Interface.CallHook("OnVendingShopOpen", vendingMachine, player) == null)
{
vendingMachine.PlayerOpenLoot(player, "vendingmachine.customer", doPositionChecks: false);
Interface.CallHook("OnVendingShopOpened", vendingMachine, player);
}
return;
//---csharp
//---
{
if (vendingMachine == null)
{
vendingMachine = GetComponentInChildren<NPCVendingMachine>();
}
if (Interface.CallHook("OnVendingShopOpen", vendingMachine, msg.player) == null)
{
vendingMachine.OpenShop(msg.player);
Interface.CallHook("OnVendingShopOpened", vendingMachine, msg.player);
}
}csharp
[RPC_Server]
[RPC_Server.IsVisible(3f)]
public void RPC_OpenShop(RPCMessage msg)
{
if (OccupiedCheck(msg.player) && Interface.CallHook("OnVendingShopOpen", this, msg.player) == null)
{
OpenShop(msg.player);
Interface.CallHook("OnVendingShopOpened", this, msg.player);
}
}