Kaynağa Gözat

BETA: H5 Nevit's blessing packets update (thanks mochitto)

Rumen Nikiforov 14 yıl önce
ebeveyn
işleme
3440f4e7a4

+ 4 - 0
L2J_Server_BETA/java/com/l2jserver/gameserver/network/clientpackets/EnterWorld.java

@@ -67,6 +67,8 @@ import com.l2jserver.gameserver.network.serverpackets.EtcStatusUpdate;
 import com.l2jserver.gameserver.network.serverpackets.ExBasicActionList;
 import com.l2jserver.gameserver.network.serverpackets.ExBirthdayPopup;
 import com.l2jserver.gameserver.network.serverpackets.ExGetBookMarkInfoPacket;
+import com.l2jserver.gameserver.network.serverpackets.ExNavitAdventPointInfoPacket;
+import com.l2jserver.gameserver.network.serverpackets.ExNavitAdventTimeChange;
 import com.l2jserver.gameserver.network.serverpackets.ExNoticePostArrived;
 import com.l2jserver.gameserver.network.serverpackets.ExNotifyPremiumItem;
 import com.l2jserver.gameserver.network.serverpackets.ExShowScreenMessage;
@@ -415,6 +417,8 @@ public class EnterWorld extends L2GameClientPacket
 		
 		sendPacket(new SkillCoolTime(activeChar));
 		sendPacket(new ExVoteSystemInfo(activeChar));
+		sendPacket(new ExNavitAdventPointInfoPacket(0));
+		sendPacket(new ExNavitAdventTimeChange(-1)); // only set pause state...
 		
 		for (L2ItemInstance i : activeChar.getInventory().getItems())
 		{

+ 45 - 0
L2J_Server_BETA/java/com/l2jserver/gameserver/network/serverpackets/ExNavitAdventEffect.java

@@ -0,0 +1,45 @@
+/*
+ * This program is free software: you can redistribute it and/or modify it under
+ * the terms of the GNU General Public License as published by the Free Software
+ * Foundation, either version 3 of the License, or (at your option) any later
+ * version.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
+ * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
+ * details.
+ *
+ * You should have received a copy of the GNU General Public License along with
+ * this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+package com.l2jserver.gameserver.network.serverpackets;
+
+/**
+ * @author mochitto
+ *
+ * Format: (ch)d
+ * d: time to left effect in seconds
+ */
+public class ExNavitAdventEffect extends L2GameServerPacket
+{
+       private int _timeToLeft;
+      
+       public ExNavitAdventEffect(int timeToLeft)
+       {
+               _timeToLeft = timeToLeft;
+       }
+      
+       @Override
+       protected void writeImpl()
+       {
+               writeC(0xFE);
+               writeH(0xE0);
+               writeD(_timeToLeft);
+       }
+      
+       @Override
+       public String getType()
+       {
+               return "[S] FE:E0 ExNavitAdventEffect";
+       }
+}

+ 45 - 0
L2J_Server_BETA/java/com/l2jserver/gameserver/network/serverpackets/ExNavitAdventPointInfoPacket.java

@@ -0,0 +1,45 @@
+/*
+ * This program is free software: you can redistribute it and/or modify it under
+ * the terms of the GNU General Public License as published by the Free Software
+ * Foundation, either version 3 of the License, or (at your option) any later
+ * version.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
+ * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
+ * details.
+ *
+ * You should have received a copy of the GNU General Public License along with
+ * this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+package com.l2jserver.gameserver.network.serverpackets;
+
+/**
+ * @author mochitto
+ *
+ * Format: (ch)d
+ * d: points - max 7200 is 100%
+ */
+public class ExNavitAdventPointInfoPacket extends L2GameServerPacket
+{
+       private int _points = 0;
+      
+       public ExNavitAdventPointInfoPacket(int points)
+       {
+               _points = points;
+       }
+      
+       @Override
+       protected void writeImpl()
+       {
+               writeC(0xFE);
+               writeH(0xDF);
+               writeD(_points); // 72 = 1%
+       }
+      
+       @Override
+       public String getType()
+       {
+               return "[S] FE:DF ExNavitAdventPointInfoPacket";
+       }
+}

+ 54 - 0
L2J_Server_BETA/java/com/l2jserver/gameserver/network/serverpackets/ExNavitAdventTimeChange.java

@@ -0,0 +1,54 @@
+/*
+ * This program is free software: you can redistribute it and/or modify it under
+ * the terms of the GNU General Public License as published by the Free Software
+ * Foundation, either version 3 of the License, or (at your option) any later
+ * version.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
+ * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
+ * details.
+ *
+ * You should have received a copy of the GNU General Public License along with
+ * this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+package com.l2jserver.gameserver.network.serverpackets;
+
+/**
+ * @author mochitto
+ *
+ * Format: (ch)cd
+ * c: state 0 - pause 1 - started
+ * d: left time in ms max is 16000 its 4m and state is automatically changed to quit
+ */
+public class ExNavitAdventTimeChange extends L2GameServerPacket
+{
+       private boolean _paused;
+       private int _time = 0;
+      
+       public ExNavitAdventTimeChange(int time)
+       {
+               if( time >= 0 )
+               {
+                       _time = time > 16000 ? 16000 : time;
+                       _paused = false;
+               }
+               else
+                       _paused = true;
+       }
+      
+       @Override
+       protected void writeImpl()
+       {
+               writeC(0xFE);
+               writeH(0xE1);
+               writeC(_paused ? 0x00 : 0x01);
+               writeD(_time); // time in ms (16000 = 4mins = state quit)
+       }
+      
+       @Override
+       public String getType()
+       {
+               return "[S] FE:E1 ExNavitAdventTimeChange";
+       }
+}