Hello all.

I've been playing around with a Servuo server lately, thinking of just using it for a few friends. Anyway, I am trying to liven the world up a bit with npc/waypoints and some sort of schedule. I found zerodowned's Freezetile script and figured I would try incorporating it, but as I'm mostly lost when it comes to writing code, I was wondering if anyone here would be able to help me out. I just need to stop the tile from freezing players. Here's the script:

using System;
using Server.Mobiles;

namespace Server.Items
{
public class FreezeTile : Item
{

[Constructable]
public FreezeTile() : base( 1313 )
{}

public FreezeTile(Serial serial) : base(serial)
{
}

public override bool OnMoveOver(Mobile m)
{
m.Paralyze( TimeSpan.FromSeconds( 25.0 ) );

return true;
}

public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);

writer.Write((int)0); // version

}

public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);

int version = reader.ReadInt();

}
}
}

Any takers? Thanks in advance!
 
the way I read it this section freezes/paralyzes the payer for 25 seconds
public override bool OnMoveOver(Mobile m)
{
m.Paralyze( TimeSpan.FromSeconds( 25.0 ) );

return true;
}

I would change the return true; to return false; and see how that works first
 
the way I read it this section freezes/paralyzes the payer for 25 seconds
public override bool OnMoveOver(Mobile m)
{
m.Paralyze( TimeSpan.FromSeconds( 25.0 ) );

return true;
}

I would change the return true; to return false; and see how that works first

Thanks for replying.

I've tried this, and the only noticeable difference is that while True, the player is frozen ON the tile, and while False, it seems the attempt to move over the tile is all that is needed. So you end up freezing right next to it.
 
what happens if you just comment out all 5 lines? it should just be a tile, unless it inherits something from the item id i suppose
 
you want creatures to be frozen though? Then
C#:
public override bool OnMoveOver(Mobile m)
{
    if(!(m is PlayerMobile))
        m.Paralyze( TimeSpan.FromSeconds( 25.0 ) );
    return true;
}

you want to not freeze anything?
Well then just remove the whole
C#:
public override bool OnMoveOver(Mobile m)
{
m.Paralyze( TimeSpan.FromSeconds( 25.0 ) );

return true;
}
 
you want creatures to be frozen though? Then
C#:
public override bool OnMoveOver(Mobile m)
{
    if(!(m is PlayerMobile))
        m.Paralyze( TimeSpan.FromSeconds( 25.0 ) );
    return true;
}

you want to not freeze anything?
Well then just remove the whole
C#:
public override bool OnMoveOver(Mobile m)
{
m.Paralyze( TimeSpan.FromSeconds( 25.0 ) );

return true;
}

Works great! Thanks to both of you!
 
Back