Exemplo n.º 1
0
        public override void Serialize(GenericWriter writer)
        {
            base.Serialize(writer);

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

            writer.WriteEncodedInt((int)m_FlashType);

            writer.Write(m_EffectDelay);
            writer.Write(m_TriggerDelay);
            writer.Write(m_SoundDelay);

            writer.WriteEntity(m_Source);
            writer.WriteEntity(m_Target);

/*
 *                      if ( m_Source is Item )
 *                              writer.Write( m_Source as Item );
 *                      else
 *                              writer.Write( m_Source as Mobile );
 *
 *                      if ( m_Target is Item )
 *                              writer.Write( m_Target as Item );
 *                      else
 *                              writer.Write( m_Target as Mobile );
 */
            writer.Write(m_Trigger as Item);

            writer.Write(m_FixedDirection);
            writer.Write(m_Explodes);
            writer.Write(m_PlaySoundAtTrigger);

            writer.WriteEncodedInt((int)m_EffectType);
            writer.WriteEncodedInt((int)m_EffectLayer);
            writer.WriteEncodedInt((int)m_TriggerType);

            writer.WriteEncodedInt(m_ItemID);
            writer.WriteEncodedInt(m_Hue);
            writer.WriteEncodedInt(m_RenderMode);
            writer.WriteEncodedInt(m_Speed);
            writer.WriteEncodedInt(m_Duration);
            writer.WriteEncodedInt(m_ParticleEffect);
            writer.WriteEncodedInt(m_ExplodeParticleEffect);
            writer.WriteEncodedInt(m_ExplodeSound);
            writer.WriteEncodedInt(m_Unknown);
            writer.WriteEncodedInt(m_SoundID);
            writer.WriteEncodedInt(m_TriggerRange);
        }
        public override void Serialize( GenericWriter writer )
        {
            base.Serialize( writer );

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

            writer.Write( m_EffectDelay );
            writer.Write( m_TriggerDelay );
            writer.Write( m_SoundDelay );

            writer.WriteEntity( m_Source );
            writer.WriteEntity( m_Target );

            /*
            if ( m_Source is Item )
                writer.Write( m_Source as Item );
            else
                writer.Write( m_Source as Mobile );

            if ( m_Target is Item )
                writer.Write( m_Target as Item );
            else
                writer.Write( m_Target as Mobile );
            */
            writer.Write( m_Trigger as Item );

            writer.Write( m_FixedDirection );
            writer.Write( m_Explodes );
            writer.Write( m_PlaySoundAtTrigger );

            writer.WriteEncodedInt( (int) m_EffectType );
            writer.WriteEncodedInt( (int) m_EffectLayer );
            writer.WriteEncodedInt( (int) m_TriggerType );

            writer.WriteEncodedInt( m_ItemID );
            writer.WriteEncodedInt( m_Hue );
            writer.WriteEncodedInt( m_RenderMode );
            writer.WriteEncodedInt( m_Speed );
            writer.WriteEncodedInt( m_Duration );
            writer.WriteEncodedInt( m_ParticleEffect );
            writer.WriteEncodedInt( m_ExplodeParticleEffect );
            writer.WriteEncodedInt( m_ExplodeSound );
            writer.WriteEncodedInt( m_Unknown );
            writer.WriteEncodedInt( m_SoundID );
            writer.WriteEncodedInt( m_TriggerRange );
        }