DarkEmu_GameServer.Systems.GM C# (CSharp) Метод

GM() приватный Метод

private GM ( ) : void
Результат void
        void GM()
        {
            if (Character.Information.GM == 1)
            {
                PacketReader Reader = new PacketReader(PacketInformation.buffer);
                short gType         = Reader.Int16();
                //Console.WriteLine("GM Command {0} used by:{1} ",gType, Character.Information.Name);
                switch (gType)
                {
                    case 0:
                        // Command /playercount
                        break;
                    case 1:
                        // Command /finduser
                        break;
                    case 2:
                        // Command / MsgClear
                        break;
                    case 3:
                        GM_TOTOWN(Reader.Text());
                        break;
                    case 4:
                        // Command /Getpos
                        break;
                    case 5:
                        // Command /stat
                        break;
                    case 6:
                        GM_LOADMONSTER(Reader.Int32(), Reader.Byte(), Reader.Byte());
                        break;
                    case 7:
                        GM_MAKEITEM(Reader.Int32(), Reader.Byte());
                        break;
                    case 8:
                        GM_GOUSER(Reader.Text());
                        break;
                    case 12:
                        // Command /zoe
                        GM_ZOE(Reader.Int32(), Reader.Byte());
                        break;
                    case 13:
                        GM_BAN(Reader.Text());
                        break;
                    case 14:
                        GM_INVISIBLE();
                        break;
                    case 15:
                        GM_INVINCIBLE();
                        break;
                    case 16:
                        if (PacketInformation.buffer.Length > 4)
                            GM_WP(Reader.Byte(), Reader.Byte(), Reader.Single(), Reader.Single(), Reader.Single());
                        break;
                    case 17:
                        GM_RECALLUSER(Reader.Text());
                        break;
                    case 19:
                        // Command /instance
                    case 20:
                        GM_MOBKILL(Reader.Int32(), Reader.UInt16());
                        break;
                    case 23:
                        GM_BLOCKLOGOUT(Reader.Text(), Reader.Byte());
                        break;
                    case 26:
                        GM_LIENAME(Reader.Text());
                        break;
                    case 27:
                        //initq
                        GM_SKILL();
                        break;
                    case 42:
                        GM_SPAWN_UNIQUE();
                        break;
                    case 49:
                        GM_CLEARINVEN();
                        break;
                    case 50:
                        // Command /barena
                        break;
                    case 25:
                        // Command /fakename
                        // Used for transforming now
                        GM_TRANSFORM(Reader.Text());
                        break;
                    case 99:
                        // Command /power %d
                    case 100:
                        // Command /timeoff
                        break;
                    case 101:
                        // Command /timeon
                        break;
                    case 102:
                        // Command /time %d
                        break;
                    case 103:
                        // Command /day
                        break;
                    case 104:
                        // Command /night
                        break;
                    case 105:
                        // Command /rain %d
                        int type = 2;
                        GM_WEATHER(Reader.Int32(),type);
                        break;
                    case 106:
                        // Command /snow %d
                        type = 3;
                        GM_WEATHER(Reader.Int32(),type);
                        break;
                    case 107:
                        // Command /clear
                        type = 1;
                        GM_WEATHER(Reader.Int32(),type);
                        break;
                    case 108:
                        // Command /+
                        break;
                    case 109:
                        // Command /-
                        break;
                    case 110:
                        // Command /zoom
                        break;
                    case 111:
                        // Command /fast
                        break;
                    case 112:
                        // Command /showme
                        break;
                    case 113:
                        // Command /hideme
                        break;
                    case 114:
                        // Command /camera
                        break;
                    case 115:
                        // Command /uioff
                        break;
                    case 116:
                        // Command /uion
                        break;
                    case 117:
                        // Command /frame
                        break;
                    case 118:
                        // Command /colon
                        break;
                    case 119:
                        // Command /coloff
                        break;
                    case 130:
                        // Command /cwclear
                        break;
                    case 131:
                        // Command /cwpop
                        break;
                    case 132:
                        // Command /cwgo
                        break;
                    case 133:
                        // Command /cwstop
                        break;
                    case 134:
                        // Command /cwsave
                        break;
                    case 135:
                        // Command /ms
                        break;
                    case 136:
                        // Command /cs %d
                        break;
                    case 137:
                        // Command /id
                        break;
                    case 150:
                        // Command /wire
                        break;
                    case 151:
                        // Command /ground
                        break;
                    case 152:
                        // Command /sky
                        break;
                    case 153:
                        // Command /mobj
                        break;
                    case 154:
                        // Command /char
                        break;
                    case 155:
                        // Command /lod
                        break;
                    case 400:
                        // Command /Item %d
                        break;
                    case 500:
                        // Command /setfov %d
                        break;
                    case 600:
                        // Command /setspeed %d
                        break;
                    case 601:
                        // Command /equip %d
                        break;
                    case 602:
                        // Command /makeobj %d
                        break;
                    case 603:
                        // Command /snd %s
                        break;
                    default:
                        Console.WriteLine("Non Coded Gm Command: " + gType);
                        Print.Format(Decode.StringToPack(PacketInformation.buffer));
                        break;
                }
                Reader.Close();
            }
            else
            {
                lock (Systems.clients)
                {
                    foreach (Systems sys in Systems.clients)
                    {
                        try
                        {
                            if (sys.Character.Information.Name == Character.Information.Name)
                            {
                                sys.client.Send(Packet.ChatPacket(7, Character.Information.UniqueID, "from GM:You are banned.", null));
                                sys.Disconnect("ban");
                                Console.WriteLine("Autobanned user: " + Player.AccountName + " Due to hacking");
                                return;
                            }
                        }
                        catch (Exception ex)
                        {
                            Console.WriteLine("Commands error: " + ex);
                        }
                    }
                }
            }
        }

Usage Example

Пример #1
0
        public static void oPCode(Decode de)
        {
            try
            {
                Systems sys = (Systems)de.Packet;
                sys.PacketInformation = de;
                //Console.WriteLine("Recv: (0x{0})", de.opcode.ToString("X4"));
                switch (de.opcode)
                {
                case 0x7481:
                    break;

                case CLIENT_PING:
                case CLIENT_PING2:
                    break;

                case CLIENT_PATCH:
                    sys.Patch();
                    break;

                case CLIENT_CONNECTION:
                    sys.Connect();
                    break;

                case CLIENT_CHARACTERSCREEN:
                    sys.CharacterScreen();
                    sys.Ping();
                    break;

                case CLIENT_INGAME_REQUEST:
                    sys.IngameLogin();
                    break;

                case CLIENT_INGAME_SUCCESS:
                    sys.InGameSuccess();
                    break;

                case CLIENT_REQUEST_WEATHER:
                    sys.LoadWeather();
                    break;

                case CLIENT_SIT:
                    sys.Doaction();
                    break;

                case CLIENT_QUESTMARK:
                    sys.QuestionMark();
                    break;

                case CLIENT_MOVEMENT:
                    sys.Movement();
                    break;

                case CLIENT_ANGLE_MOVE:
                    sys.Angle();
                    break;

                case CLIENT_SAVE_BAR:
                    sys.Save();
                    break;

                case CLIENT_LEAVE_REQUEST:
                    sys.LeaveGame();
                    break;

                case CLIENT_LEAVE_CANCEL:
                    sys.CancelLeaveGame();
                    break;

                case CLIENT_ITEM_MOVE:
                    sys.ItemMain();
                    break;

                case CLIENT_SELECT_OBJECT:
                    sys.SelectObject();
                    break;

                case CLIENT_GM:
                    sys.GM();
                    break;

                case CLIENT_EMOTE:
                    sys.Emote();
                    break;

                case CLIENT_TELEPORTSTART:
                    sys.Teleport_Start();
                    break;

                case CLIENT_TELEPORTDATA:
                    sys.Teleport_Data();
                    break;

                case CLIENT_CHAT:
                    sys.Chat();
                    break;

                case CLIENT_MAINACTION:
                    sys.ActionMain();
                    break;

                case CLIENT_MASTERY_UP:
                    sys.Mastery_Up();
                    break;

                case CLIENT_SKILL_UP:
                    sys.Mastery_Skill_Up();
                    break;

                case CLIENT_GETUP:
                    sys.Player_Up();
                    break;

                case CLIENT_REQUEST_PARTY:
                    sys.NormalRequest();
                    break;

                case CLIENT_PARTY_REQUEST:
                    sys.CharacterRequest();
                    break;

                case CLIENT_EXCHANGE_REQUEST:
                    sys.Exchange_Request();
                    break;

                case CLIENT_EXCHANGE_WINDOWS_CLOSE:
                    sys.Exchange_Close();
                    break;

                case CLIENT_EXCHANGE_ACCEPT:
                    sys.Exchange_Accept();
                    break;

                case CLIENT_EXCHANGE_APPROVE:
                    sys.Exchange_Approve();
                    break;

                case CLIENT_PARTY_ADDMEMBERS:
                    sys.PartyAddmembers();
                    break;

                case CLIENT_PARTY_LEAVE:
                    sys.LeaveParty();
                    break;

                case CLIENT_PARTY_BANPLAYER:
                    sys.PartyBan();
                    break;

                case CLIENT_GUIDE:
                    sys.Gameguide();
                    break;

                case CLIENT_PLAYER_UPDATE_INT:
                    sys.InsertInt();
                    break;

                case CLIENT_PLAYER_UPDATE_STR:
                    sys.InsertStr();
                    break;

                case CLIENT_PLAYER_HANDLE:
                    sys.Handle();
                    break;

                case CLIENT_PLAYER_BERSERK:
                    sys.Player_Berserk_Up();
                    break;

                case CLIENT_CLOSE_NPC:
                    sys.Close_NPC();
                    break;

                case CLIENT_OPEN_NPC:
                    sys.Open_NPC();
                    break;

                case CLIENT_NPC_BUYPACK:
                    sys.Player_BuyPack();
                    break;

                case CLIENT_OPEN_WAREHOUSE:
                    sys.Open_Warehouse();
                    break;

                case CLIENT_CLOSE_SCROLL:
                    sys.StopScrollTimer();
                    break;

                case CLIENT_SAVE_PLACE:
                    sys.SavePlace();
                    break;

                case CLIENT_ALCHEMY:
                    sys.AlchemyElixirMain();
                    break;

                case CLIENT_ALCHEMY_CREATE_STONE:
                    sys.AlchemyCreateStone();
                    break;

                case CLIENT_PET_MOVEMENT:
                    sys.MovementPet();
                    break;

                case CLIENT_PET_TERMINATE:
                    sys.HandleClosePet();
                    break;

                case CLIENT_PARTYMATCHING_LIST_REQUEST:
                    sys.ListPartyMatching(Party);
                    break;

                case CLIENT_CREATE_FORMED_PARTY:
                    sys.CreateFormedParty();
                    break;

                case CLIENT_FORMED_PARTY_DELETE:
                    sys.DeleteFormedParty(0);
                    break;

                case CLIENT_JOIN_FORMED_RESPONSE:
                    sys.FormedResponse();
                    break;

                case CLIENT_CHANGE_PARTY_NAME:
                    sys.RenameParty();
                    break;

                case CLIENT_JOIN_FORMED_PARTY:
                    sys.JoinFormedParty();
                    break;

                case CLIENT_START_PK:
                    sys.PkPlayer();
                    break;

                case CLIENT_GUILD:
                    sys.GuildCreate();
                    break;

                case CLIENT_GUILD_TRANSFER:
                    sys.GuildTransferLeaderShip();
                    break;

                case CLIENT_GUILD_PERMISSIONS:
                    sys.GuildPermissions();
                    break;

                case CLIENT_GUILD_PROMOTE:
                    sys.GuildPromote();
                    break;

                case CLIENT_GUILD_DISBAND:
                    sys.GuildDisband();
                    break;

                case CLIENT_GUILD_MESSAGE:
                    sys.GuildMessage();
                    break;

                case CLIENT_OPEN_GUILD_STORAGE:
                    sys.GuildStorage();
                    break;

                case CLIENT_CLOSE_GUILD_STORAGE:
                    sys.GuildStorageClose();
                    break;

                case CLIENT_GUILD_WAR_GOLD:
                    sys.GuildWarGold();
                    break;

                case CLIENT_OPEN_GUILD_STORAGE2:
                    sys.GuildStorage2();
                    break;

                case CLIENT_GUILD_KICK:
                    sys.KickFromGuild();
                    break;

                case CLIENT_GUILD_LEAVE:
                    sys.GuildLeave();
                    break;

                case CLIENT_GUILD_TITLE_SET:
                    sys.GuildTitle();
                    break;

                case CLIENT_GUILD_INVITE:
                    sys.GuildInvite();
                    break;

                case CLIENT_GUILD_DONATE_GP:
                    sys.DonateGP();
                    break;

                case CLIENT_GACHA_PLAY:
                    //Add function
                    break;

                case CLIENT_JOIN_MERC:
                    sys.JoinMerc();
                    break;

                case CLIENT_RANKING_LISTS:
                    sys.RankList();
                    break;

                case CLIENT_PREV_JOB:
                    sys.PrevJob();
                    break;

                case CLIENT_HONOR_RANK:
                    sys.HonorRank();
                    break;

                case CLIENT_PM_MESSAGE:
                    sys.PrivateMessage();
                    break;

                case CLIENT_PM_SEND:
                    sys.PrivateMessageSend();
                    break;

                case CLIENT_PM_OPEN:
                    sys.PrivateMessageOpen();
                    break;

                case CLIENT_PM_DELETE:
                    sys.PrivateMessageDelete();
                    break;

                case CLIENT_PET_UNSUMMON:
                    sys.UnSummonPet();
                    break;

                case CLIENT_PET_RENAME:
                    sys.RenamePet();
                    break;

                case CLIENT_GPET_SETTINGS:
                    sys.GrabPetSettings();
                    break;

                case CLIENT_MAKE_ALIAS:
                    sys.MakeAlias();
                    break;

                case CLIENT_LEAVE_JOB:
                    sys.LeaveJob();
                    break;

                case CLIENT_DISSEMBLE_ITEM:
                    sys.BreakItem();
                    break;

                case CLIENT_STALL_OPEN:
                    sys.StallOpen();
                    break;

                case CLIENT_STALL_CLOSE:
                    sys.StallClose();
                    break;

                case CLIENT_STALL_BUY:
                    sys.StallBuy();
                    break;

                case CLIENT_STALL_ACTION:
                    sys.StallMain();
                    break;

                case CLIENT_STALL_OTHER_OPEN:
                    sys.EnterStall();
                    break;

                case CLIENT_STALL_OTHER_CLOSE:
                    sys.LeaveStall();
                    break;

                case CLIENT_PVP:
                    sys.StartPvpTimer(10000);
                    break;

                case CLIENT_ALCHEMY_STONE:
                    sys.AlchemyStoneMain();
                    break;

                case CLIENT_ITEM_MALL_WEB:
                    sys.ItemMallWeb();
                    break;

                case CLIENT_ITEM_STORAGE_BOX:
                    sys.ItemStorageBox();
                    break;

                case CLIENT_ITEM_BOX_LOG:
                    sys.ItemStorageBoxLog();
                    break;

                case CLIENT_FRIEND_REMOVAL:
                    sys.FriendRemoval();
                    break;

                case CLIENT_FRIEND_INVITE:
                    sys.FriendAdd();
                    break;

                case CLIENT_FRIEND_GROUP:
                    sys.FriendGroup("ADD");
                    break;

                case CLIENT_FRIEND_GROUP_REMOVE:
                    sys.FriendGroup("REMOVE");
                    break;

                case CLIENT_FRIEND_GROUP_MANAGE_FRIEND:
                    sys.FriendGroup("MOVE");
                    break;

                case CLIENT_FRIEND_INVITE_RESPONSE:
                    sys.FriendAddResponse();
                    break;

                case CLIENT_UNION_APPLY:
                    sys.unionapply();
                    break;

                case CLIENT_ICON_REQUEST:
                    sys.RequestIcons();
                    break;

                default:
                    Print.Format("(0x{0}) {1}", de.opcode.ToString("X4"), Decode.StringToPack(sys.PacketInformation.buffer));
                    break;
                }
            }
            catch (Exception ex)
            {
                Systems.Debugger.Write(ex);
            }
        }
Systems