Changeset 5164
- Timestamp:
- Feb 1, 2012 2:40:13 AM (4 months ago)
- Location:
- branches/unstable/L2J_Server_BETA/java/com/l2jserver/gameserver
- Files:
-
- 3 edited
-
model/actor/L2Character.java (modified) (3 diffs)
-
model/stats/Formulas.java (modified) (2 diffs)
-
network/SystemMessageId.java (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
branches/unstable/L2J_Server_BETA/java/com/l2jserver/gameserver/model/actor/L2Character.java
r5162 r5164 37 37 import com.l2jserver.gameserver.ai.L2AttackableAI; 38 38 import com.l2jserver.gameserver.ai.L2CharacterAI; 39 import com.l2jserver.gameserver.datatables.AccessLevels; 39 40 import com.l2jserver.gameserver.datatables.DoorTable; 40 41 import com.l2jserver.gameserver.datatables.ItemTable; … … 52 53 import com.l2jserver.gameserver.model.FusionSkill; 53 54 import com.l2jserver.gameserver.model.IChanceSkillTrigger; 55 import com.l2jserver.gameserver.model.L2AccessLevel; 54 56 import com.l2jserver.gameserver.model.L2CharPosition; 55 57 import com.l2jserver.gameserver.model.L2Object; … … 340 342 { 341 343 return false; 344 } 345 346 // Overrided in L2PcInstance 347 public L2AccessLevel getAccessLevel() 348 { 349 return null; 342 350 } 343 351 -
branches/unstable/L2J_Server_BETA/java/com/l2jserver/gameserver/model/stats/Formulas.java
r5150 r5164 2215 2215 public static final boolean calcLethalHit(L2Character activeChar, L2Character target, L2Skill skill) 2216 2216 { 2217 if (!target.isRaid() && !(target instanceof L2DoorInstance) && !((target instanceof L2Npc) && (((L2Npc) target).getNpcId() == 35062))) 2218 { 2219 // activeChar.sendMessage(Double.toString(chance)); 2220 // activeChar.sendMessage(Double.toString(calcLethal(activeChar, target, skill.getLethalChance2(),skill.getMagicLevel()))); 2221 // activeChar.sendMessage(Double.toString(calcLethal(activeChar, target, skill.getLethalChance1(),skill.getMagicLevel()))); 2222 2217 if (!target.isRaid() && !target.isInvul() && !(target.isDoor()) && !((target.isNpc()) && (((L2Npc) target).getNpcId() == 35062))) 2218 { 2223 2219 // 2nd lethal effect activate (cp,hp to 1 or if target is npc then hp to 1) 2224 2220 if ((skill.getLethalChance2() > 0) && (Rnd.get(1000) < calcLethal(activeChar, target, skill.getLethalChance2(), skill.getMagicLevel()))) 2225 2221 { 2226 if (target instanceof L2Npc)2222 if (target.isNpc()) 2227 2223 { 2228 2224 target.reduceCurrentHp(target.getCurrentHp() - 1, activeChar, skill); 2229 2225 } 2230 else if (target instanceof L2PcInstance) // If is a active player set his HP and CP to 12226 else if (target.isPlayer()) // If is a active player set his HP and CP to 1 2231 2227 { 2232 2228 L2PcInstance player = (L2PcInstance) target; 2233 2229 if (!player.isInvul()) 2234 2230 { 2235 if (!( (activeChar instanceof L2PcInstance) && (((L2PcInstance) activeChar).isGM() && !((L2PcInstance) activeChar).getAccessLevel().canGiveDamage())))2231 if (!(activeChar.isPlayer() && (activeChar.isGM() && !activeChar.getAccessLevel().canGiveDamage()))) 2236 2232 { 2237 2233 player.setCurrentHp(1); … … 2245 2241 else if ((skill.getLethalChance1() > 0) && (Rnd.get(1000) < calcLethal(activeChar, target, skill.getLethalChance1(), skill.getMagicLevel()))) 2246 2242 { 2247 if (target instanceof L2PcInstance) 2248 { 2249 L2PcInstance player = (L2PcInstance) target; 2250 if (!player.isInvul()) 2243 if (target.isMonster()) 2244 { 2245 target.reduceCurrentHp(target.getCurrentHp() / 2, activeChar, skill); 2246 activeChar.sendPacket(SystemMessageId.HALF_KILL); 2247 } 2248 else if (target.isPlayer()) 2249 { 2250 L2PcInstance player = target.getActingPlayer(); 2251 if (!((activeChar.isPlayer()) && (activeChar.isGM() && !activeChar.getAccessLevel().canGiveDamage()))) 2251 2252 { 2252 if (!((activeChar instanceof L2PcInstance) && (((L2PcInstance) activeChar).isGM() && !((L2PcInstance) activeChar).getAccessLevel().canGiveDamage()))) 2253 { 2254 player.setCurrentCp(1); // Set CP to 1 2255 player.sendPacket(SystemMessageId.CP_DISAPPEARS_WHEN_HIT_WITH_A_HALF_KILL_SKILL); 2256 activeChar.sendPacket(SystemMessageId.CP_SIPHON); 2257 } 2253 player.setCurrentCp(1); // Set CP to 1 2254 player.sendPacket(SystemMessageId.CP_DISAPPEARS_WHEN_HIT_WITH_A_HALF_KILL_SKILL); 2255 activeChar.sendPacket(SystemMessageId.HALF_KILL); 2258 2256 } 2259 2257 } 2260 // TODO: remove half kill since SYSMsg got changed.2261 /*2262 * else if (target instanceof L2Npc) // If is a monster remove first damage and after 50% of current hp target.reduceCurrentHp(target.getCurrentHp() / 2, activeChar, skill);2263 */2264 2265 2258 } 2266 2259 else -
branches/unstable/L2J_Server_BETA/java/com/l2jserver/gameserver/network/SystemMessageId.java
r5125 r5164 13543 13543 /** 13544 13544 * ID: 2336<br> 13545 * Message: CP Siphon!13546 */ 13547 public static final SystemMessageId CP_SIPHON;13545 * Message: Half-Kill! 13546 */ 13547 public static final SystemMessageId HALF_KILL; 13548 13548 13549 13549 /** … … 17144 17144 YOU_CANNOT_RECEIVE_THE_VITAMIN_ITEM = new SystemMessageId(2333); 17145 17145 THERE_ARE_NO_MORE_VITAMIN_ITEMS_TO_BE_FOUND = new SystemMessageId(2335); 17146 CP_SIPHON= new SystemMessageId(2336);17146 HALF_KILL = new SystemMessageId(2336); 17147 17147 CP_DISAPPEARS_WHEN_HIT_WITH_A_HALF_KILL_SKILL = new SystemMessageId(2337); 17148 17148 YOU_CANNOT_USE_MY_TELEPORTS_DURING_A_BATTLE = new SystemMessageId(2348);
Note: See TracChangeset
for help on using the changeset viewer.
