public override bool UseItem(Player player)
 {
     if (!CastledWorld.waitParti && !NPC.AnyNPCs(mod.NPCType("ItemLotteryNPC")))
     {
         player.GetModPlayer <CastledPlayer>().parti = true;
         NPC.NewNPC((int)player.position.X, (int)player.position.Y - 400, mod.NPCType("ItemLotteryNPC"));
     }
     if (CastledWorld.waitParti)
     {
         LMan.CancelEvent();
     }
     return(true);
 }
Esempio n. 2
0
        /// <summary>
        /// Exchange data with card
        /// </summary>
        public static string SendReceive(string command, ref string response)
        {
            if (selectedReaderType == "")
            {
                // No reader manager selected
                return(lMan.GetString("noselreader"));
            }

            // create alias
            IReader rSelected = (IReader)ReaderManager[selectedReaderType];

            command = command.Replace("0x", "");
            command = command.Replace(" ", "");
            command = command.ToUpper();

            if (command.Length == 0)
            {
                // wrong command format
                return(LMan.GetString("wrongcmd") + "\r\n");
            }


            if (command.Length % 2 != 0)
            {
                // wrong command format
                return(LMan.GetString("wrongcmd") + "\r\n");
            }

            // parse all digits
            foreach (char digit in command)
            {
                if (!Uri.IsHexDigit(digit))
                {
                    // wrong command format
                    return(LMan.GetString("wrongcmd") + "\r\n");
                }
            }

            // Exchange data with smartcard in selected reader
            return(rSelected.SendReceive(command, ref response));
        }