root/trunk/AE-go_GameServer/src/com/aionemu/gameserver/network/aion/clientpackets/CM_DIALOG_SELECT.java

967993
21
import com.aionemu.gameserver.model.gameobjects.Npc;
21
import com.aionemu.gameserver.model.gameobjects.Npc;
22
import com.aionemu.gameserver.model.gameobjects.player.Player;
22
import com.aionemu.gameserver.model.gameobjects.player.Player;
23
import com.aionemu.gameserver.model.gameobjects.player.RequestResponseHandler;
23
import com.aionemu.gameserver.model.gameobjects.player.RequestResponseHandler;
24
import com.aionemu.gameserver.model.gameobjects.player.StorageType;
24
import com.aionemu.gameserver.network.aion.AionClientPacket;
25
import com.aionemu.gameserver.network.aion.AionClientPacket;
25
import com.aionemu.gameserver.network.aion.serverpackets.SM_DIALOG_WINDOW;
26
import com.aionemu.gameserver.network.aion.serverpackets.SM_DIALOG_WINDOW;
26
import com.aionemu.gameserver.network.aion.serverpackets.SM_MESSAGE;
27
import com.aionemu.gameserver.network.aion.serverpackets.SM_MESSAGE;
...
...
29
import com.aionemu.gameserver.network.aion.serverpackets.SM_SYSTEM_MESSAGE;
30
import com.aionemu.gameserver.network.aion.serverpackets.SM_SYSTEM_MESSAGE;
30
import com.aionemu.gameserver.network.aion.serverpackets.SM_TELEPORT_MAP;
31
import com.aionemu.gameserver.network.aion.serverpackets.SM_TELEPORT_MAP;
31
import com.aionemu.gameserver.network.aion.serverpackets.SM_TRADELIST;
32
import com.aionemu.gameserver.network.aion.serverpackets.SM_TRADELIST;
33
import com.aionemu.gameserver.network.aion.serverpackets.SM_WAREHOUSE_INFO;
32
import com.aionemu.gameserver.questEngine.QuestEngine;
34
import com.aionemu.gameserver.questEngine.QuestEngine;
33
import com.aionemu.gameserver.questEngine.model.QuestEnv;
35
import com.aionemu.gameserver.questEngine.model.QuestEnv;
34
import com.aionemu.gameserver.services.ClassChangeService;
36
import com.aionemu.gameserver.services.ClassChangeService;
35
import com.aionemu.gameserver.services.CubeExpandService;
37
import com.aionemu.gameserver.services.CubeExpandService;
36
import com.aionemu.gameserver.utils.PacketSendUtility;
38
import com.aionemu.gameserver.utils.PacketSendUtility;
39
import com.aionemu.gameserver.utils.MathUtil;
37
import com.google.inject.Inject;
40
import com.google.inject.Inject;
38
41
39
/**
42
/**
...
...
86
		final Player player = getConnection().getActivePlayer();
89
		final Player player = getConnection().getActivePlayer();
87
		if(player == null)
90
		if(player == null)
88
			return;
91
			return;
89
		
92
90
		if(targetObjectId == 0)
93
		if(targetObjectId == 0)
91
		{
94
		{
92
			if (QuestEngine.getInstance().onDialog(new QuestEnv(null, player, questId, dialogId)))
95
			if (QuestEngine.getInstance().onDialog(new QuestEnv(null, player, questId, dialogId)))
...
...
118
				break;
121
				break;
119
			case 20:
122
			case 20:
120
				//warehouse
123
				//warehouse
121
				sendPacket(new SM_DIALOG_WINDOW(targetObjectId, 26));
124
				if(MathUtil.isInRange(npc, player, 10)) // voiding exploit with sending fake client dialog_select packet
125
				{
126
					sendPacket(new SM_DIALOG_WINDOW(targetObjectId, 26));
127
					sendPacket(new SM_WAREHOUSE_INFO(player.getStorage(StorageType.REGULAR_WAREHOUSE.getId()).getStorageItems(), StorageType.REGULAR_WAREHOUSE.getId()));
128
					sendPacket(new SM_WAREHOUSE_INFO(null, StorageType.REGULAR_WAREHOUSE.getId())); // strange retail way of sending warehouse packets
129
					sendPacket(new SM_WAREHOUSE_INFO(player.getStorage(StorageType.ACCOUNT_WAREHOUSE.getId()).getUnquippedItems(), StorageType.ACCOUNT_WAREHOUSE.getId()));
130
					sendPacket(new SM_WAREHOUSE_INFO(null, StorageType.ACCOUNT_WAREHOUSE.getId()));
131
				}				
122
				break;
132
				break;
123
			case 27:
133
			case 27:
124
				//Consign trade?? npc karinerk, koorunerk
134
				//Consign trade?? npc karinerk, koorunerk
...
...
141
						}
151
						}
142
						//TODO not enought kinah message
152
						//TODO not enought kinah message
143
					}
153
					}
144
		
154
145
					@Override
155
					@Override
146
					public void denyRequest(Creature requester, Player responder)
156
					public void denyRequest(Creature requester, Player responder)
147
					{
157
					{
...
...
173
				break;
183
				break;
174
			case 38:
184
			case 38:
175
				//flight and teleport
185
				//flight and teleport
176
//				if (player.getCommonData().isFlying() == true)
186
				//				if (player.getCommonData().isFlying() == true)
177
//				{
187
				//				{
178
//					PacketSendUtility.sendPacket(player, new SM_SYSTEM_MESSAGE(1300696));
188
				//					PacketSendUtility.sendPacket(player, new SM_SYSTEM_MESSAGE(1300696));
179
//					return;
189
				//					return;
180
//				}
190
				//				}
181
				sendPacket(new SM_TELEPORT_MAP(player, targetObjectId));
191
				sendPacket(new SM_TELEPORT_MAP(player, targetObjectId));
182
				break;
192
				break;
183
			case 39:
193
			case 39: