RunUo.Korean.Forum    :: RunUo Document 2.0 RC1 (Beta):: 
Statistics  Archive (html)  S-BLOG  [RSS FEED]   

 
  RunUo.Korean.Forum
ÀæÀºÁú¹®  ÀæÀºÁú¹®    °Ë»ö   °Ë»ö    ȸ¿ø¸®½ºÆ®  È¸¿ø¸®½ºÆ®   À¯Àú±×·ì  À¯Àú±×·ì   Gabbly äÆÃ¿­±â  Ã¤ÆÃ¿­±â 
 
ȸ¿ø°¡ÀÔ  ::  ·Î±×ÀÎ ÂÊÁö ÇÔ È®ÀÎ
 
RunUo.Korean.Forum ¢º Script Support ¢º ¹®°ÔÀÌÆ®¿¡ Ç¥½ÃµÇ´Â µµ½ÃÀ̸§ ¹Ù²Ù±â
»õ ±ÛÀ» ÀÛ¼ºÇÕ´Ï´Ù.´äº¯±ÛÀ» ÀÛ¼ºÇÕ´Ï´Ù. Post Printing
¡Ø TOPIC : ¹®°ÔÀÌÆ®¿¡ Ç¥½ÃµÇ´Â µµ½ÃÀ̸§ ¹Ù²Ù±â ÀÌÀü ±Û :: ´ÙÀ½ ±Û
±Û ¾´ÀÌ ¸Þ¼¼Áö ³»¿ë
c1dong8
ÀÛ¼º±ÛÁ¦¸ñ : ¹®°ÔÀÌÆ®¿¡ Ç¥½ÃµÇ´Â µµ½ÃÀ̸§ ¹Ù²Ù±â   ±Û ÀÛ¼º½Ã°£ : 2005-01-20 ¸ñ 10:31 pm ±ÛÀ» ÀοëÇÏ¿© ÀÛ¼ºÇÕ´Ï´Ù.

Oldbie
Oldbie

°¡ÀÔÀÏ: 2004³â 01¿ù 26ÀÏ
°Ô½Ã¹°: 446

....
¹®°ÔÀÌÆ®ÀÇ µµ½ÃµéÀÇ ÁÂÇ¥¸¦ ¹Ù²Ù´Â°Ç ¼º°øÇߴµ¥......¹®Á¦´Â °ËÇÁ¿¡ Ç¥½ÃµÇ´Â µµ½ÃÀ̸§À» ¸ø ¹Ù²Ù°Ú´Ù´Â°Ì´Ï´Ù ¤Ñ,.¤Ñ;;;
µ¥Ãæ Äڵ带 º¸¾ÆÇÏ´Ï ¾îµò°¡¿¡ ¸Þ½ÃÁö¸¦ Á¤ÀÇÇØ³í ÆÄÀϰ°Àº°Ô ÀÖÀ»¹ýµµ Çѵ¥....µµ¹«Áö ¾î´À°ÇÁö ¸ð¸£°Ú½À´Ï´Ù ¤Ì.¤Ì;;
¿©Æ° ÇïÇÁ¹Ì~
¡è ¸Ç À§·Î °¡±â ¡è
ȸ¿ø ÇÁ·ÎÇÊ º¸±â ÂÊÁö º¸³»±â
jodalbong
ÀÛ¼º±ÛÁ¦¸ñ : À̺κоƴÑÁö...   ±Û ÀÛ¼º½Ã°£ : 2005-01-21 ±Ý 10:20 am ±ÛÀ» ÀοëÇÏ¿© ÀÛ¼ºÇÕ´Ï´Ù.

Second Cicle [1]
Second Cicle [1]

°¡ÀÔÀÏ: 2004³â 11¿ù 08ÀÏ
°Ô½Ã¹°: 20
ÁÖ ¼Ò: ´ë±¸ Áß±¸ ³²»ê3µ¿/2121¡­2500

new PMEntry( new Point3D( 4467, 1283, 5 ), 1012003 ), // Moonglow

µÚÂÊ¿¡ 1012003 <- ¹®±Û·ç °íÀ¯ÄÚµå³Ñ¹ö(¸Â³ª?) ÀÔ´Ï´Ù.

Áï ±×°É ¹Ù²Ù¸é °ËÇÁµµ ¹Ù²îÁö¾ÊÀ»±î ½Í³×¿ä..
¡è ¸Ç À§·Î °¡±â ¡è
ȸ¿ø ÇÁ·ÎÇÊ º¸±â ÂÊÁö º¸³»±â
c1dong8
ÀÛ¼º±ÛÁ¦¸ñ : ¾Æ....   ±Û ÀÛ¼º½Ã°£ : 2005-01-21 ±Ý 4:50 pm ±ÛÀ» ÀοëÇÏ¿© ÀÛ¼ºÇÕ´Ï´Ù.

Oldbie
Oldbie

°¡ÀÔÀÏ: 2004³â 01¿ù 26ÀÏ
°Ô½Ã¹°: 446

À§¿¡µµ ÀûÇôÀÖÁö¸¸......±×°Ô ¸Þ½ÃÁö ÄÚµåÀΰŠ°°½À´Ï´Ù.
±×·¸´Ï±î 11111Çϸé(¿¹Á¦ÀÓ´Ï´Ù.) yes°¡ ³ª¿À°Ô µÇÀÖ´Ù°í º¾½Ã´Ù.
±×·³ ¿µ¹®ÆÇ¿¡¼­´Â 'yes'°¡ ³ª¿À°í ÇÑ±ÛÆÇ¿¡¼­´Â '¿¹' °¡ ³ª¿À´Â ½ÄÀÓ´Ï´Ù.
¸¸¾à Àú·±°æ¿ì ¸Þ½ÃÁö Äڵ带 »ç¿ëÇØ¼­ ½ºÅ©¸³À» ¸¸µé¸é ¾î´À ¾ð¾î³ª Áö¿øÇÏ´Â ¼ÀÀӵʴϴÙ.(´öºÐ¿¡ ¿µ¹®½ºÅ©¸³¿¡¼­µµ ÇѱÛÀ» º¼¼ö ÀÖÀú;;;)
Á¦°¡ ÇÏ·Á´Â°Ç ±× ¸Þ½ÃÁöÄڵ带 º¸°í½ÍÀº°Íµµ ÀÖÁö¸¸...(¤»¤»¤»;;;;¸Þ½ÃÁö Äڵ带 º»´ÙÇѵé Ŭ¶óÀÌ¾ðÆ®¸¦ ¹Ù²ÙÁö ¾Ê´Â´Ù¸é ¼Ò¿ë¾øÀú ;;)
µµ½ÃÀ̸§ÀÌ ¾Æ´Ñ ´Ù¸¥ À̸§ÀÌ Ãâ·ÂµÇ°Ô ÇÏ°í ½ÍÀº°Ì´Ï´Ù.
ÄÚµå»óÀ¸·Î´Â Á÷Á¢ Ãâ·Â¸Þ½ÃÁö¸¦ ½ºÅ©¸³¿¡¼­ °Çµô¿©¼­ "°£´ÞÇÁ"¾²¸é ¿µ¹®ÆÇ¿¡¼­µµ "°£´ÞÇÁ"°¡ ³ª¿À°Ô µÇ´Â ¼ÀÀÓ´Ï´Ù....(À̾ÆÀ̵ð¾î´Â Áö±Ý »ý°¢³­°Ì´Ï´Ù ¤Ñ.¤Ñ;)
Áý¿¡°¡´Âµ¥·Î ¸¸µé¾îºÁ¾ß °Ú±º¿ä...(³»ÀÏÀ̳ª µé¾î°¥ »ý°¢ÀÌÁö¸¸;;)
±×Àü¿¡ ÇØº¸½ÇºÐµéÀº ÇØº¸½Ã±æ -_-;;
¡è ¸Ç À§·Î °¡±â ¡è
ȸ¿ø ÇÁ·ÎÇÊ º¸±â ÂÊÁö º¸³»±â
c1dong8
ÀÛ¼º±ÛÁ¦¸ñ : ÀÎÅͳÝÀÌ Áö±Ý¿¡¾ß µÇ´Â¹Ù¶÷¿¡--;;   ±Û ÀÛ¼º½Ã°£ : 2005-01-23 ÀÏ 12:59 pm ±ÛÀ» ÀοëÇÏ¿© ÀÛ¼ºÇÕ´Ï´Ù.

Oldbie
Oldbie

°¡ÀÔÀÏ: 2004³â 01¿ù 26ÀÏ
°Ô½Ã¹°: 446

¹®°ÔÀÌÆ®¿¡ ½áÀÖ´Â µµ½ÃÀ̸§ ¹Ù²Ù´Â ¹æ¹ýÀÓ´Ï´Ù.

ÀÎÅͳÝÀÌ ¾ÈµÇ´Â ¹Ù¶÷¿¡ ¿¬±¸ÇÑ°É ´Ê°Ô ¿Ã·È±º¿ä ¤Ñ,.¤Ñ;;;

ÀÏ´Ü ¹®°ÔÀÌÆ®´Â Scripts\Items\Misc\PublicMoongate.cs ¿¡ ÀÖ½À´Ï´Ù.

ÀÏ´Ü À§¿¡¼­µµ ¼³¸íÇßµíÀÌ µµ½ÃÀ̸§Àº Á¤¼öÇüÅ·ΠÁ¤ÇØÁø ÄÚµå·Î ÁöÁ¤µÇÀÖ½À´Ï´Ù.
ÄÚµå : 

new PMEntry( new Point3D( 4079, 307, 0 ), 1012003 ), // Moonglow
¸¦
new PMEntry( new Point3D( 4079, 307, 0 ), 1012000 ), // Moonglow
ÀÌ·¸°Ô ¹Ù²Ù¸é

'¹®±Û·Î¿ì'°¡ ¾Æ´Ñ 'Æ®¶ó¸á'À̶ó°í µµ½ÃÀ̸§ÀÌ ¶ä´Ï´Ù.
¿µ¹®ÆÇ¿¡¼­´Â 'Moonglow'°¡¾Æ´Ñ 'Trammel'¶ó°í ¶ä´Ï´Ù.
¹®ÀÚÄÚµå´Â ¾îµð±îÁö³ª ´Ù±¹¾î Áö¿øÀ» À§ÇØ Àִ°ÍÀ̱⠶§¹®¿¡ ¿Ü±¹Àεé»ó´ë·Î ¸¸µé¶§°¡ ¾Æ´Ï¸é º°·Î ½Å°á¾µÇʿ䰡 ¾ø½À´Ï´Ù.
±×·¡¼­ Á¤¼öÇüŰ¡ ¾Æ´Ñ ¹®ÀÚ ÇüÅÂÀÇ °ªÀ» ¹Þ¾Æµå¸±¼ö ÀÖ°Ô °³Á¶¸¦ ÇØº¾½Ã´Ù.

°³Á¶ÇϱâÀü¿¡ PublicMoongate.cs ÆÄÀÏ »ª¾÷Çϼ¼¿ä--;;;
ÄÚµå : 

134¶óÀÎ
   public class PMEntry
   {
      private Point3D m_Location;
      private int m_Number;

      public Point3D Location
      {
         get
         {
            return m_Location;
         }
      }

      public int Number
      {
         get
         {
            return m_Number;
         }
      }

      public PMEntry( Point3D loc, int number )
      {
         m_Location = loc;
         m_Number = number;
      }
   }

À̳ÑÀº Á¤¼ö(int)Çü½ÄÀ¸·Î °ªÀ» ¹Þ¾Æ¿À´Â ³ÑÀÓ´Ï´Ù.
°³Á¶Çؼ­ ¹®ÀÚ(string)Çü½ÄÀ¸·Î °ªÀ» ¹Þ¾Æ¿À°Ô ÇϰڽÀ´Ï´Ù.
ÄÚµå : 

   public class PMEntry
   {
      private Point3D m_Location;
      private string m_Number;

      public Point3D Location
      {
         get
         {
            return m_Location;
         }
      }

      public string Number
      {
         get
         {
            return m_Number;
         }
      }

      public PMEntry( Point3D loc, string number )
      {
         m_Location = loc;
         m_Number = number;                      }
   }

¼±¾ð¸¸ ¹Ù±îÁÖ¸é µÊ´Ï´Ù.
È£~
À̵¥·Î ÀúÀåÇÏ°í ±¼¸®¸é ¿¡·¯°¡ ¿Õâ¿Õâ ¤»¤»¤»¤»¤»
ÀÏ´Ü Á¤¼ö¿¡¼­ ¹®ÀÚÇüÅ·Π°ªÀ» ¹Þ¾Æ¿À´Ï ÁÂÇ¥ÄÚµåºÎÅÍ °íĨ½Ã´Ù.
ÄÚµå : 

      public static readonly PMList Trammel =
         new PMList( 1012000, 1012012, Map.Trammel, new PMEntry[]
            {
               new PMEntry( new Point3D( 4079, 307, 0 ), 1012003 ), // Moonglow
               new PMEntry( new Point3D( 1336, 1997, 5 ), 1012004 ), // Britain
               new PMEntry( new Point3D( 1499, 3771, 5 ), 1012005 ), // Jhelom
               new PMEntry( new Point3D(  771,  752, 5 ), 1012006 ), // Yew
               new PMEntry( new Point3D( 2701,  692, 5 ), 1012007 ), // Minoc
               new PMEntry( new Point3D( 1828, 2948,-20), 1012008 ), // Trinsic
               new PMEntry( new Point3D(  643, 2067, 5 ), 1012009 ), // Skara Brae
               new PMEntry( new Point3D( 3563, 2139, 34), 1012010 ), // Magincia
               new PMEntry( new Point3D( 3763, 2771, 50), 1046259 )  // Haven
            } );

À̳ÑÀ»

      public static readonly PMList Trammel =
         new PMList( "ÄíÀÌ", "     <- ºûÀÇ °¡È£", Map.Trammel, new PMEntry[]
            {
               new PMEntry( new Point3D( 4100, 316, 0 ), "ºûÀÇ ¼¶" ), // Moonglow
               new PMEntry( new Point3D( 1356, 1624, 72 ), "Ä«½¼" ), // Britain
               new PMEntry( new Point3D( 4663, 1134, 13 ), "ÅÚ½Ã" ), // Jhelom
               new PMEntry( new Point3D(  2132,  2787, 0 ), "µð¾î" ), // Yew
               new PMEntry( new Point3D( 630,  2231, 0 ), "ÇϺ»" ), // Minoc
               //new PMEntry( new Point3D( 1828, 2948,-20), "1012008" ), // Trinsic
               //new PMEntry( new Point3D(  643, 2067, 5 ), "1012009" ), // Skara Brae
               //new PMEntry( new Point3D( 3563, 2139, 34), "1012010" ), // Magincia
               //new PMEntry( new Point3D( 3763, 2771, 50), "1046259" )  // Haven
            } );
ÀÌ·±½ÄÀ¸·Î ¹Ù²¨ÁÜ´Ï´Ù.
(ÀÌÄÚµåÀÇ ÁÂÇ¥´Â Á¦°¡ ¿î¿µÇÏ´Â ¼­¹ö¸¦ ±âÁØÀ¸·Î µÇÀֱ⶧¹®¿¡ ÁÂÇ¥°¡ °³ÆÇÀÓ´Ï´Ù ¤»¤»¤»¤»¤»±×·¯´Ï ±×³É ÆÛ´Ù¾²Áö ¸¶½Ã±æ ¤Ñ,.¤Ñ;;)
Æç·çÄ«³ª ÀϽ¦³ªµµ ¹Ù±îÁּžßÇÔ´Ï´Ù.



´«Ä¡Ã¤½Å ºÐµµ ÀÖ°ÚÁö¸¸ µµ½Ã ÁÂÇ¥ÀÇ °¹¼ø´Â º°·Î °ü°è¾ø½À´Ï´Ù. ´ÜÁö 8°³°¡ ³Ñ¾î°¡¸é °ËÇÁ ¹ÛÀ¸·Î »ßÀú³ª°£´Ù´Â Á¤µµ ¤Ñ,.¤Ñ;;(±×³ª¸¶µµ ÄÚµå·Î ¼öÁ¤°¡´ÉÇÔ´Ï´Ù.)

ÀÌÁ¦ ¶Ç ±¼·Áº¾½Ã´Ù.

¾î¸Ó³ª~ ¶Ç¿¡·¯°¡ ÃãÀ» ¤»¤»¤»¤»¤»
´ç¿¬ÇÑ À̾߱âÁö¸¸ Á¤¼öÇü¸¦ ¹®ÀÚÇüÀ¸·Î ¹Ù²Ù¾ú±â¶§¹®¿¡ °Å±â¿¡ µþ·ÁÀÖ´Â ÄÚµåµéÀ» ´Ù ¹Ù±îÁÖ¾î¾ß ÇÔ´Ï´Ù.
¿¡·¯³ª´Â ÁÙÀ» ã¾Æ¼­
ÄÚµå : 

      public PMList( int number, int selNumber, Map map, PMEntry[] entries )
      {
         m_Number = number;
         m_SelNumber = selNumber;
         m_Map = map;
         m_Entries = entries;
      }
ÀÌ·± Äڵ带
      public PMList( string number, string selNumber, Map map, PMEntry[] entries )
      {
         m_Number = number;
         m_SelNumber = selNumber;
         m_Map = map;
         m_Entries = entries;
      }
ÀÌ·±½ÄÀ¸·Î ¹Ù±îÁÜ´Ï´Ù.

ÇÏ´Ùº¸¸é °íÄ¥¶§¸¶´Ù ¿¡·¯°¡ ´Ã¾î³¯¼öµµ ÀÖ½À´Ï´Ù.
ÆòÁ¤½ÉÀ» °¡Áö°í ÇϳªÇϳª °íÄ¡½Ã±æ ¤»¤»¤»¤»
±×·±½ÄÀ¸·Î Á¤¼ö¸¦ ¹Þ¾ÆµéÀÌ´Â ºÎºÐÀ» ¹®ÀÚÇüÀ» ¹Þ¾ÆµéÀÌ°Ô ¹Ù²ÛÈÄ

118¶óÀÎÀÇ
ÄÚµå : 

      private static int MoonGen( PMList list )
      {
         foreach ( PMEntry entry in list.Entries )
         {
            Item item = new PublicMoongate();

            item.MoveToWorld( entry.Location, list.Map );

            if ( entry.Number == 1060642 ) // Umbra
               item.Hue = 0x497;
         }

         return list.Entries.Length;
      }

ÀÇ
ÄÚµå : 

if ( entry.Number == 1060642 ) // Umbra
   item.Hue = 0x497;

¸¦ Áö¿öÁÖ¸é µÊ´Ï´Ù.
¡è ¸Ç À§·Î °¡±â ¡è
ȸ¿ø ÇÁ·ÎÇÊ º¸±â ÂÊÁö º¸³»±â
c1dong8
ÀÛ¼º±ÛÁ¦¸ñ : ÄÚµùÇϽñ⠽ÈÀººÐµéÀ» À§ÇÑ ÀüüÄÚµå..   ±Û ÀÛ¼º½Ã°£ : 2005-01-23 ÀÏ 1:26 pm ±ÛÀ» ÀοëÇÏ¿© ÀÛ¼ºÇÕ´Ï´Ù.

Oldbie
Oldbie

°¡ÀÔÀÏ: 2004³â 01¿ù 26ÀÏ
°Ô½Ã¹°: 446



³­ C#°°Àº°Å °Çµô¿©º¼ ¸¾ ÀüÇô¾ø´Ù.
³­ ·±À¯¿À½ºÅ©¸³ ÆÛ´Ù¾²¸é ½èÁö ¸¸µé¾î¾µ¸¾ ¾ø´Ù.
....
³­ ½Ç·ÂºÎÁ·ÀÌ¿©--;;

ÇϽô ºÐµéÀ» À§ÇÑ Àüü ÄÚµåÀÓ´Ï´Ù ¤»¤»¤»;;;;;

ÄÚµå : 

using System;
using System.Collections;
using Server;
using Server.Gumps;
using Server.Network;
using Server.Mobiles;

namespace Server.Items
{
   public class PublicMoongate : Item
   {
      [Constructable]
      public PublicMoongate() : base( 0xF6C )
      {
         Movable = false;
         Light = LightType.Circle300;
      }

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

      public override void OnDoubleClick( Mobile from )
      {
         if ( !from.Player )
            return;

         if ( from.InRange( GetWorldLocation(), 1 ) )
            UseGate( from );
         else
            from.SendLocalizedMessage( 500446 ); // That is too far away.
      }

      public override bool OnMoveOver( Mobile m )
      {
         return !m.Player || UseGate( m );
      }

      public bool UseGate( Mobile m )
      {
         if ( m.Criminal )
         {
            m.SendLocalizedMessage( 1005561, "", 0x22 ); // Thou'rt a criminal and cannot escape so easily.
            return false;
         }
         else if ( Server.Spells.SpellHelper.CheckCombat( m ) )
         {
            m.SendLocalizedMessage( 1005564, "", 0x22 ); // Wouldst thou flee during the heat of battle??
            return false;
         }
         else if ( m.Spell != null )
         {
            m.SendLocalizedMessage( 1049616 ); // You are too busy to do that at the moment.
            return false;
         }
         else
         {
            m.CloseGump( typeof( MoongateGump ) );
            m.SendGump( new MoongateGump( m, this ) );

            Effects.PlaySound( m.Location, m.Map, 0x20E );
            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();
      }

      public static void Initialize()
      {
         Server.Commands.Register( "MoonGen", AccessLevel.Administrator, new CommandEventHandler( MoonGen_OnCommand ) );
      }

      [Usage( "MoonGen" )]
      [Description( "Generates public moongates. Removes all old moongates." )]
      public static void MoonGen_OnCommand( CommandEventArgs e )
      {
         DeleteAll();

         int count = 0;

         count += MoonGen( PMList.Trammel );
         count += MoonGen( PMList.Felucca );
         count += MoonGen( PMList.Ilshenar );
         count += MoonGen( PMList.Malas );

         World.Broadcast( 0x35, true, "{0} moongates generated.", count );
      }

      private static void DeleteAll()
      {
         ArrayList list = new ArrayList();

         foreach ( Item item in World.Items.Values )
         {
            if ( item is PublicMoongate )
               list.Add( item );
         }

         foreach ( Item item in list )
            item.Delete();

         if ( list.Count > 0 )
            World.Broadcast( 0x35, true, "{0} moongates removed.", list.Count );
      }

      private static int MoonGen( PMList list )
      {
         foreach ( PMEntry entry in list.Entries )
         {
            Item item = new PublicMoongate();

            item.MoveToWorld( entry.Location, list.Map );

            //if ( entry.Number == 1060642 ) // Umbra
            //   item.Hue = 0x497;
         }

         return list.Entries.Length;
      }
   }

   public class PMEntry
   {
      private Point3D m_Location;
      private string m_Number;

      public Point3D Location
      {
         get
         {
            return m_Location;
         }
      }

      public string Number
      {
         get
         {
            return m_Number;
         }
      }

      public PMEntry( Point3D loc, string number )
      {
         m_Location = loc;
         m_Number = number;//*************************************
      }
   }

   public class PMList
   {
      private string m_Number, m_SelNumber;
      private Map m_Map;
      private PMEntry[] m_Entries;

      public string Number
      {
         get
         {
            return m_Number;
         }
      }

      public string SelNumber
      {
         get
         {
            return m_SelNumber;
         }
      }

      public Map Map
      {
         get
         {
            return m_Map;
         }
      }

      public PMEntry[] Entries
      {
         get
         {
            return m_Entries;
         }
      }

      public PMList( string number, string selNumber, Map map, PMEntry[] entries )
      {
         m_Number = number;
         m_SelNumber = selNumber;
         m_Map = map;
         m_Entries = entries;
      }

      public static readonly PMList Trammel =
         new PMList( "ÄíÀÌ", "     <- ºûÀÇ °¡È£", Map.Trammel, new PMEntry[]
            {
               new PMEntry( new Point3D( 4100, 316, 0 ), "ºûÀÇ ¼¶" ), // Moonglow
               new PMEntry( new Point3D( 1356, 1624, 72 ), "Ä«½¼" ), // Britain
               new PMEntry( new Point3D( 4663, 1134, 13 ), "ÅÚ½Ã" ), // Jhelom
               new PMEntry( new Point3D(  2132,  2787, 0 ), "µð¾î" ), // Yew
               new PMEntry( new Point3D( 630,  2231, 0 ), "ÇϺ»" ), // Minoc
               //new PMEntry( new Point3D( 1828, 2948,-20), "1012008" ), // Trinsic
               //new PMEntry( new Point3D(  643, 2067, 5 ), "1012009" ), // Skara Brae
               //new PMEntry( new Point3D( 3563, 2139, 34), "1012010" ), // Magincia
               //new PMEntry( new Point3D( 3763, 2771, 50), "1046259" )  // Haven
            } );

      public static readonly PMList Felucca =
         new PMList( "°í¸®", "     <-¾îµÒÀÇ °¡È£", Map.Felucca, new PMEntry[]
            {
               new PMEntry( new Point3D( 4210, 563, 42 ), "¾îµÒÀÇ ¼¶" ), // Moonglow
               new PMEntry( new Point3D( 2229, 1226, 0 ), "ºê¸®Æ°" ), // Britain
               new PMEntry( new Point3D( 4300, 968, 5 ), "Ä«¿Â" ), // Jhelom
               new PMEntry( new Point3D(  2012,  2756, 20 ), "¿ÀÄ«" ), // Yew
               new PMEntry( new Point3D( 787,  2243, 0 ), "Çϵå·Ï" ), // Minoc
               //new PMEntry( new Point3D( 1828, 2948,-20), "1012008"), // Trinsic
               //new PMEntry( new Point3D(  643, 2067, 5 ), "1012009" ), // Skara Brae
               //new PMEntry( new Point3D( 3563, 2139, 34), "1012010" ), // Magincia
               //new PMEntry( new Point3D( 2711, 2234, 0 ), "1019001" )  // Buccaneer's Den
            } );

      public static readonly PMList Ilshenar =
         new PMList( "īġ", "     <-¾îµÒÀÇ °¡È£", Map.Ilshenar, new PMEntry[]
            {
               new PMEntry( new Point3D( 836,  641, -20 ), "Ä«¿î¸Þ" ), // Compassion
               new PMEntry( new Point3D(  843, 1175, -56 ), "Å©¸®Áî" ), // Honesty
               new PMEntry( new Point3D(  1249,  571, -16 ), "·¹Å°³×" ), // Honor
               new PMEntry( new Point3D(  1363, 1105, -26 ), "³ÊÁö" ), // Humility
               //new PMEntry( new Point3D(  987, 1011, -32 ), "1012019" ), // Justice
               //new PMEntry( new Point3D( 1174, 1286, -30 ), "1012020" ), // Sacrifice
               //new PMEntry( new Point3D( 1532, 1340, - 3 ), "1012021" ), // Spirituality
               //new PMEntry( new Point3D(  528,  216, -45 ), "1012022" ), // Valor
               //new PMEntry( new Point3D( 1721,  218,  96 ), "1019000" )  // Chaos
            } );

      public static readonly PMList Malas =
         new PMList( "Ÿ¶ó", "     <-¾îµÒÀÇ °¡È£", Map.Malas, new PMEntry[]
            {
               new PMEntry( new Point3D( 926,  520, -90 ), "¸®¿¡ÀÌ" ), // Luna
               new PMEntry( new Point3D( 2033, 1333, -88 ), "ÇÁÁö" )  // Umbra
            } );

      public static readonly PMList[] UORLists = new PMList[]{ Trammel, Felucca };
      public static readonly PMList[] LBRLists = new PMList[]{ Trammel, Felucca, Ilshenar };
      public static readonly PMList[] AOSLists = new PMList[]{ Trammel, Felucca, Ilshenar, Malas };
      public static readonly PMList[] RedLists = new PMList[]{ Felucca };
   }

   public class MoongateGump : Gump
   {
      private Mobile m_Mobile;
      private Item m_Moongate;
      private PMList[] m_Lists;

      public MoongateGump( Mobile mobile, Item moongate ) : base( 100, 100 )
      {
         m_Mobile = mobile;
         m_Moongate = moongate;

         PMList[] checkLists;

         if ( mobile.Player )
         {
            if ( mobile.Kills >= 5 )
            {
               checkLists = PMList.RedLists;
            }
            else
            {
               int flags = mobile.NetState == null ? 0 : mobile.NetState.Flags;

               if ( Core.AOS && (flags & 0x8) != 0 )
                  checkLists = PMList.AOSLists;
               else if ( (flags & 0x4) != 0 )
                  checkLists = PMList.LBRLists;
               else
                  checkLists = PMList.UORLists;
            }
         }
         else
         {
            checkLists = PMList.AOSLists;
         }

         m_Lists = new PMList[checkLists.Length];

         for ( int i = 0; i < m_Lists.Length; ++i )
            m_Lists[i] = checkLists[i];

         for ( int i = 0; i < m_Lists.Length; ++i )
         {
            if ( m_Lists[i].Map == mobile.Map )
            {
               PMList temp = m_Lists[i];

               m_Lists[i] = m_Lists[0];
               m_Lists[0] = temp;

               break;
            }
         }

         AddPage( 0 );

         AddBackground( 0, 0, 380, 280, 5054 );

         AddButton( 10, 210, 4005, 4007, 1, GumpButtonType.Reply, 0 );
         AddHtml( 45, 210, 140, 25, "Àü¼Û", false, false ); // OKAY

         AddButton( 10, 235, 4005, 4007, 0, GumpButtonType.Reply, 0 );
         AddHtml( 45, 235, 140, 25, "Ãë¼Ò", false, false ); // CANCEL

         AddHtml( 5, 5, 200, 20, "¸ñÀûÁö¸¦ ¼±ÅÃÇϼ¼¿ä", false, false ); // Pick your destination:

         for ( int i = 0; i < checkLists.Length; ++i )
         {
            AddButton( 10, 35 + (i * 25), 2117, 2118, 0, GumpButtonType.Page, Array.IndexOf( m_Lists, checkLists[i] ) + 1 );
            AddHtml( 30, 35 + (i * 25), 150, 20, checkLists[i].Number, false, false );
         }

         for ( int i = 0; i < m_Lists.Length; ++i )
            RenderPage( i, Array.IndexOf( checkLists, m_Lists[i] ) );
      }

      private void RenderPage( int index, int offset )
      {
         PMList list = m_Lists[index];

         AddPage( index + 1 );

         AddButton( 10, 35 + (offset * 25), 2117, 2118, 0, GumpButtonType.Page, index + 1 );
         AddHtml( 30, 35 + (offset * 25), 150, 20, list.SelNumber, false, false );

         PMEntry[] entries = list.Entries;

         for ( int i = 0; i < entries.Length; ++i )   //*******************************************
         {
            AddRadio( 200, 35 + (i * 25), 210, 211, false, (index * 100) + i );
            AddHtml( 225, 35 + (i * 25), 150, 20, entries[i].Number, false, false );
         }//**************************************************************************************
      }

      public override void OnResponse( NetState state, RelayInfo info )
      {
         if ( info.ButtonID == 0 ) // Cancel
            return;
         else if ( m_Mobile.Deleted || m_Moongate.Deleted || m_Mobile.Map == null )
            return;

         int[] switches = info.Switches;

         if ( switches.Length == 0 )
            return;

         int switchID = switches[0];
         int listIndex = switchID / 100;
         int listEntry = switchID % 100;

         if ( listIndex < 0 || listIndex >= m_Lists.Length )
            return;

         PMList list = m_Lists[listIndex];

         if ( listEntry < 0 || listEntry >= list.Entries.Length )
            return;

         PMEntry entry = list.Entries[listEntry];

         if ( !m_Mobile.InRange( m_Moongate.GetWorldLocation(), 1 ) || m_Mobile.Map != m_Moongate.Map )
         {
            m_Mobile.SendLocalizedMessage( 1019002 ); // You are too far away to use the gate.
         }
         else if ( m_Mobile.Player && m_Mobile.Kills >= 5 && list.Map != Map.Felucca )
         {
            m_Mobile.SendLocalizedMessage( 1019004 ); // You are not allowed to travel there.
         }
         else if ( m_Mobile.Criminal )
         {
            m_Mobile.SendLocalizedMessage( 1005561, "", 0x22 ); // Thou'rt a criminal and cannot escape so easily.
         }
         else if ( Server.Spells.SpellHelper.CheckCombat( m_Mobile ) )
         {
            m_Mobile.SendLocalizedMessage( 1005564, "", 0x22 ); // Wouldst thou flee during the heat of battle??
         }
         else if ( m_Mobile.Spell != null )
         {
            m_Mobile.SendLocalizedMessage( 1049616 ); // You are too busy to do that at the moment.
         }
         else if ( m_Mobile.Map == list.Map && m_Mobile.InRange( entry.Location, 1 ) )
         {
            m_Mobile.SendLocalizedMessage( 1019003 ); // You are already there.
         }
         else
         {
            BaseCreature.TeleportPets( m_Mobile, entry.Location, list.Map );

            m_Mobile.Combatant = null;
            m_Mobile.Warmode = false;
            m_Mobile.Hidden = true;

            m_Mobile.MoveToWorld( entry.Location, list.Map );

            Effects.PlaySound( entry.Location, list.Map, 0x1FE );
         }
      }
   }
}

¹®°ÔÀÌÆ® ÆÄÀÏ¿­°í °í´ë·Î ºÙ¿©³Ö½Ã¸é µÊ´Ï´Ù;;
¡è ¸Ç À§·Î °¡±â ¡è
ȸ¿ø ÇÁ·ÎÇÊ º¸±â ÂÊÁö º¸³»±â
ÀÌÀü °Ô½Ã¹°º¸±â :
»õ ±ÛÀ» ÀÛ¼ºÇÕ´Ï´Ù.´äº¯±ÛÀ» ÀÛ¼ºÇÕ´Ï´Ù. ÇöÀçÆäÀÌÁö : 1/1

RunUo.Korean.Forum ¢º Script Support ¢º ¹®°ÔÀÌÆ®¿¡ Ç¥½ÃµÇ´Â µµ½ÃÀ̸§ ¹Ù²Ù±â
¹Ù·Î°¡±â:


°Ô½Ã¹° ÀÛ¼º : (X)
´äº¯±Û ÀÛ¼º : (X)
°Ô½Ã¹° ¼öÁ¤ : (X)
°Ô½Ã¹° »èÁ¦ : (X)
ÅõÇ¥ Çϱâ : (X)
ÆÄÀÏ ¾÷·Îµå : (X)
ÆÄÀÏ ´Ù¿î·Îµå : (0)



DAJ Glass (1.0.5) template by Dustin Baccetti // template edit by GangPung
EQ graphic based off of a design from www.freeclipart.nu
Powered by phpBB 2001, 2002 phpBB Group, Translated by zzangga

DNS Powered by DNSEver.com