public override void ObjectGoingProne(LiquidVolume Liquid, GameObject GO)
 {
     if (Liquid.IsWadingDepth())
     {
         if (GO.IsPlayer())
         {
             BaseLiquid.AddPlayerMessage("{{R|Poisonous ichor splashes into your mouth. You feel your nervious system shutters.}}");
         }
         GO.Splatter("&w.");
         if (!GO.MakeSave("Toughness", 30, null, null, "Goo Poison"))
         {
             GO.ApplyEffect(new Poisoned(Stat.Roll("1d4+4"), Stat.Roll("1d2+2") + "d2", 10));
         }
     }
 }
コード例 #2
0
        public static void GetFerments()
        {
            if (ferments == null)
            {
                ferments = new Dictionary <string, string>();
                List <GameObjectBlueprint> bps = GameObjectFactory.Factory.GetBlueprintsWithTag("FermentTo");
                foreach (GameObjectBlueprint bp in bps)
                {
                    if (bp.allparts.ContainsKey("LiquidVolume"))
                    {
                        string[] liquidbits = bp.allparts["LiquidVolume"].GetParameter("InitialLiquid").Split('-');
                        //IPart.AddPlayerMessage("Tryadd initliq:"+liquidbits[0]+" / "+String.Join(", ",LiquidVolume.ComponentLiquidNameMap.Keys.ToList().ToArray()));

                        if (LiquidVolume.getLiquid(liquidbits[0]) != null)
                        {
                            BaseLiquid L = LiquidVolume.getLiquid(liquidbits[0]);
                            if (LiquidVolume.getLiquid(bp.GetTag("FermentTo")) != null)
                            {
                                BaseLiquid F = LiquidVolume.getLiquid(bp.GetTag("FermentTo"));
                                //ferments[L.Name] = Convert.ToByte(F.ID);
                                IPart.AddPlayerMessage(L.ID + " can ferment to:" + F.ID + "!");
                                ferments[L.ID] = F.ID;
                            }
                            else
                            {
                                ferments[L.ID] = bp.GetTag("FermentTo");
                                IPart.AddPlayerMessage(L.ID + " can ferment to:" + bp.GetTag("FermentTo") + "!");
                            }
                        }
                    }
                    else
                    {
                        if (LiquidVolume.getLiquid(bp.GetTag("FermentTo")) != null)
                        {
                            BaseLiquid F = LiquidVolume.getLiquid(bp.GetTag("FermentTo"));
                            //ferments[bp.Name] = Convert.ToByte(F.ID);
                            ferments[bp.Name] = F.ID;
                            IPart.AddPlayerMessage(bp.Name + " can  ferments to:" + F.ID + "!");
                        }
                        else
                        {
                            ferments[bp.Name] = bp.GetTag("FermentTo");
                            IPart.AddPlayerMessage(bp.Name + " can ferment to:" + bp.GetTag("FermentTo") + "!");
                        }
                    }
                }
            }
        }