Exemplo n.º 1
0
 static void Postfix(PLFire __instance)
 {
     if (Global.PluginIsOn)
     {
         __instance.HasSpread = false;
     }
 }
Exemplo n.º 2
0
        static bool Prefix(PLFire __instance)
        {
            PulsarPluginLoader.Utilities.Logger.Info("Spreading");
            if (!Global.PluginIsOn)
            {
                return(true);
            }
            bool    tryspread = true;
            Vector3 inOffset  = new Vector3();

            while (tryspread)
            {
                inOffset   = UnityEngine.Random.onUnitSphere * 2f;
                inOffset.y = 0f;
                tryspread  = false;
                foreach (PLFire fire in __instance.MyShip.AllFires.Values)
                {
                    float distance = Vector3.Distance(fire.transform.position, inOffset);
                    if (distance <= 1.5f)
                    {
                        tryspread = true;
                        break;
                    }
                }
            }
            if (PLServer.Instance != null)
            {
                PLServer.Instance.CreateFireAtOffset(__instance, inOffset);
            }
            return(false);
        }