Ejemplo n.º 1
0
    private static void ApplyDPS(UFPlayerLife player, Room.LiquidProperties.LiquidType type)
    {
        switch (type)
        {
        case Room.LiquidProperties.LiquidType.Lava:
            player.TakeDamage(10f * Time.deltaTime, UFPlayerLife.DamageType.Fire, true);
            break;

        case Room.LiquidProperties.LiquidType.Acid:
            player.TakeDamage(5f * Time.deltaTime, UFPlayerLife.DamageType.Acid, true);
            break;
        }
    }
Ejemplo n.º 2
0
    public void Set(Room room)
    {
        Vector3 center  = -transform.position + (.5f * (room.aabb.min + room.aabb.max));
        Vector3 extents = room.aabb.max - room.aabb.min;

        Room.LiquidProperties liquid = room.liquidProperties;

        float depth = liquid.depth;
        float y     = -transform.position.y + room.aabb.min.y + depth / 2f;

        BoxCollider bc = gameObject.AddComponent <BoxCollider>();

        bc.center    = new Vector3(center.x, y, center.z);
        bc.size      = new Vector3(extents.x, depth, extents.z);
        bc.isTrigger = true;

        alpha      = liquid.alpha / 255f;
        color      = liquid.color;
        type       = liquid.type;
        visibility = liquid.visibility;
    }