From 9f6f864a36d02b5a5319d27e3a3b184d8616f937 Mon Sep 17 00:00:00 2001
From: ten <123556224+kaixiten@users.noreply.github.com>
Date: Fri, 8 Nov 2024 20:53:11 +0800
Subject: [PATCH 001/357] Update zh_CN.lang
Update the Chinese language file and correct any previous mistranslations.
---
.../assets/customnpcs/lang/zh_CN.lang | 538 ++++++++++++++++--
1 file changed, 504 insertions(+), 34 deletions(-)
diff --git a/src/main/resources/assets/customnpcs/lang/zh_CN.lang b/src/main/resources/assets/customnpcs/lang/zh_CN.lang
index 6559374fe..d8de7694b 100644
--- a/src/main/resources/assets/customnpcs/lang/zh_CN.lang
+++ b/src/main/resources/assets/customnpcs/lang/zh_CN.lang
@@ -1,9 +1,14 @@
-customnpcs.defaultTextColor=404040
+customnpcs.defaultTextColor=404040
+
+entity.CustomNpc.name=自定义NPC
+entity.customnpcs.CustomNpc.name=自定义NPC
+
itemGroup.cnpcs=自定义NPC工具
itemGroup.cnpcsw=自定义NPC武器
itemGroup.cnpcsa=自定义NPC护甲
itemGroup.cnpcsb=自定义NPC方块
itemGroup.cnpcsm=自定义NPC杂项
+
tile.npcRedstoneBlock.name=红石块
tile.npcCarpentyBench.name=木工台
tile.npcBloodBlock.name=血迹
@@ -46,6 +51,8 @@ tile.npcPlaceholder_12.name=占位符
tile.npcPlaceholder_13.name=占位符
tile.npcPlaceholder_14.name=占位符
tile.npcPlaceholder_15.name=占位符
+tile.npcScripted.name=脚本方块
+
gui.delete=你确定要删除这个NPC吗?
gui.add=添加
gui.remove=删除
@@ -80,36 +87,151 @@ gui.always=总是允许
gui.untilclose=直到关闭
gui.whenavailable=准备时
gui.ignoreDamage=无视伤害
+gui.ignoreNBT=忽略NBT
+gui.recordHistory=记录历史
+gui.minrange=最小范围
gui.engagedistance=交互距离
gui.orbitdistance=轨道距离
+gui.fightifthisclose=靠近攻击
+gui.ambushdistance=埋伏距离
+gui.combatchance=战斗机会
+gui.whendistant=远离时
+gui.whenhidden=隐藏
gui.currentFolder=当前文件夹
gui.play=播放
gui.selectSound=选择音效
gui.selectnpc=选择NPC
gui.select=选择
gui.range=范围
-gui.name=名称
gui.partly=部分的
-gui.copy=复制
+gui.copy=复制
gui.clear=清除
gui.done=确定
gui.paste=粘贴
+gui.test=测试
gui.settings=设置
gui.enabled=开启
gui.website=网站
gui.text=文本
gui.detailed=详细的
+gui.server=服务器
+gui.showmore=显示更多
+gui.update=更新
+gui.editor=编辑器
+gui.playernearby=玩家附近
+gui.forum=论坛
+gui.id=ID
+gui.widthHeight=宽度和高度
+gui.position=位置
+gui.screen=屏幕
+gui.option=选项
+gui.default=默认的
+gui.edit=编辑
+gui.reset=重置
+gui.filters=过滤
+gui.selectAll=选择所有
+gui.deselectAll=取消选择所有
+gui.loading=加载
+gui.off=Off
+gui.on=On
+gui.sure=你确定吗?
+
+party.accept=接受
+party.allowParty=允许队伍
+party.createParty=创建队伍
+party.disbandParty=解散队伍
+party.disbandConfirm=你确定要解散这个队伍吗?
+party.dropQuest=放弃任务
+party.friendlyFire=误伤
+party.ignore=忽略
+party.invite=邀请
+party.setChat=队伍任务设置为
+party.completeChat=队伍任务已经完成!
+party.turnedInChat=队伍任务已经准备好了!
+
+party.kick=踢出
+party.kickConfirm=你确定要踢这个玩家吗?
+party.leader=队长
+party.all=全部
+party.enrolled=登记
+party.valid=有效
+party.shared=共享
+party.leaderConfirm=你确定要让这个玩家成为队伍的队长吗?
+party.leaveParty=离开队伍
+party.leaveConfirm=你确定要离开队伍吗?
+party.inviteAlert=受邀加入队伍
+party.inviteChat=你被邀请加入一个队伍
+party.kickYouChat=你被踢出队伍了
+party.kickYouAlert=被赶出了队伍
+party.kickOtherChat=被踢出队伍了
+party.kickOtherAlert=踢出玩家
+party.leaveYouChat=你离开队伍了
+party.leaveYouAlert=左队伍
+party.leaveOtherChat=离开了队伍
+party.leaveOtherAlert=离开的玩家
+party.disbandAlert=队伍解散
+party.disbandMessage=该队伍已被解散
+party.setLeader=设置队长
+party.track=跟踪任务
+party.only=专属队伍
+party.minPartySize=最小尺寸
+party.maxPartySize=最大尺寸
+party.options=队伍选项
+party.completeFor=完成获得
+party.commandFor=执行命令
+party.party=队伍
+party.partying=队伍中!
+party.messageNoParty=你不在队伍中!等待邀请或创建一个。
+party.partyRequirements=必需项由
+party.setQuestConfirm=将任务设置为队伍将清除其进度!
+party.dropQuestConfirm=您确定要放弃队伍任务吗?
+
+settings.chatBubbles=聊天气泡
+settings.trackAlignment=跟踪定位
+settings.dialogSound=对话音效
+settings.dialogSpeed=对话速度
+settings.chatAlerts=聊天警报
+settings.bannerAlerts=横幅警报
+settings.alignmentX=追踪 X
+settings.alignmentY=追踪 Y
+settings.trackScale=跟踪范围
+settings.clearTrack=完成追踪任务
+settings.confirmClearTrack=你确定要完成追踪任务吗?
+settings.clearSkin=清除皮肤缓存
+settings.confirmClearSkin=你确定要清理你的皮肤吗?
+
+scale.shared=共享
+filter.contains=包含
+filter.any=任何
+filter.all=全部
+filter.notany=不是任何
+filter.notall=不是全部
+
remote.title=附近的NPC
remote.reset=重置
remote.tp=传送至
remote.resetall=重置所有
remote.freeze=冻结NPC
-remote.freeze=冻结NPC
+
spawner.entities=实体
spawner.clones=克隆NPC
+spawner.clones2=克隆NPC 2
+spawner.clones3=克隆NPC 3
+spawner.clones4=克隆NPC 4
spawner.mobspawner=生成刷怪笼
spawner.mount=被选中物骑乘
spawner.mountplayer=玩家骑乘
+
+spawner.posoffset=位移
+spawner.type=生成类型
+spawner.all=全部
+spawner.random=随机
+spawner.one=顺次
+spawner.summoner=召唤师死亡
+spawner.diesafter=召唤师在怪物死亡时死亡
+spawner.despawn=目标丢失后清除召唤怪
+spawner.despawnsummon=召唤师死亡后清除召唤怪
+
mailbox.name=信箱
mailbox.sender=发送者
mailbox.read=阅读
@@ -128,9 +250,11 @@ mailbox.succes=你的信息成功的发送给 %s了
mailbox.errorUsername=未知用户名
mailbox.errorSubject=标题不能为空
mailbox.setup=开启信件
+
display.model=模型
display.show=显示
display.hide=隐藏
+display.all=全部
display.showAttacking=攻击时显示
display.size=尺寸
display.texture=材质
@@ -139,13 +263,37 @@ display.overlay=附加材质
display.player=玩家
display.selectTexture=选择材质
display.livingAnimation=有活力的
+display.collides=与实体碰撞
display.visible=是否可见
display.bossbar=Boss型血条
+display.squareTexture=方形材质
+display.url=Url
+display.urlSix=Url64
+display.alpha=Alpha
+display.alignment=对准
+display.topLeft=左上
+display.topCenter=中上
+display.topRight=右上
+display.left=左
+display.center=中间
+display.right=右
+display.botLeft=左下
+display.botCenter=中下
+display.botRight=右下
+display.bottom=底部
+display.top=最高
+display.fixed=固定
+display.glow=发光
+display.solid=固体
+display.tintsettings=色调设置
+display.hitboxsettings=碰撞体积设置
+
inv.minExp=最小经验值
inv.maxExp=最大经验值
inv.npcInventory=NPC物品栏
inv.inventory=物品栏
inv.dropChance=掉落几率
+inv.auto=自动拾取
availability.options=可用的选项
availability.always=总是可用
@@ -168,10 +316,21 @@ availability.name=可用的
availability.areaNotAvailble=你不能通过这里。
availability.permission=你没权限干这事哦
availability.editIcon=从现在起十秒内,你能用右击来设置任何物品的图标
+
spawning.availableBiomes=可选生物群落
spawning.spawningBiomes=在以下生物群落内生成
+spawning.availableDimensions=可用维度
+spawning.spawningDimensions=生成所在维度
spawning.biomes=生物群落
spawning.weightedChance=生成几率
+spawning.options=生成选项
+spawning.animalSpawning=像生物一样生成
+spawning.monsterSpawning=像怪物一样生成
+spawning.liquidSpawning=在液体中生成
+spawning.airSpawning=在空气中生成
+spawning.minHeight=最小高度
+spawning.maxHeight=最大高度
+
role.name=身份
role.none=无身份
role.trader=商人
@@ -179,11 +338,15 @@ role.follower=雇佣随从
role.bank=储存者
role.transporter=传送师
role.mailman=信使
-role.marketname=Linked Marketname
+role.marketname=链接市场名称
+role.companion=同伴
+
trader.insufficient=缺少物品
+trader.sufficient=足够的货币
+trader.slotdisabled=禁用槽位
+
job.name=职业
job.none=无职业
-job.bard=吟游诗人
job.guard=守卫
job.healer=治疗者
job.bard=吟游诗人
@@ -191,26 +354,23 @@ job.itemgiver=物品给予者
job.boss=Boss
job.spawner=召唤师
job.conersation=群体对话
-spawner.dies=召唤物全部死亡后本体死亡
-spawner.posoffset=位移
-spawner.type=生成类型
-spawner.all=全部
-spawner.random=随机
-spawner.one=顺次
+job.chunkloader=区块加载
+job.puppet=木偶
+
stats.health=生命
stats.aggro=主动攻击范围
-stats.meleeproperties=近战属性
-stats.rangedproperties=远程属性
stats.projectileproperties=弹药类型
stats.meleestrength=近战伤害
stats.meleerange=近战攻击距离
stats.meleespeed=近战攻击速度
+stats.swingwarmup=热身
stats.accuracy=命中率(%)
stats.rangedrange=远程攻击距离
stats.burstspeed=连发间隔
-stats.firedelay=攻击速度
-stats.delayvariance=攻速方差
-stats.burstcount=连发数量
+stats.mindelay=最快攻速
+stats.maxdelay=最慢攻速
+stats.burstcount=连发次数
+stats.shotcount=单次射击弹药量
stats.walkspeed=移动速度
stats.meleeeffect=攻击效果(秒)
stats.respawn=重生
@@ -220,6 +380,7 @@ stats.candrown=可以被淹死
stats.firesound:=声音设置
stats.creaturetype=生物类型
stats.normal=普通
+stats.reverse=反转
stats.undead=不死
stats.arthropod=节肢动物
stats.nofalldamage=无掉落伤害
@@ -228,11 +389,22 @@ stats.rangedproperties=远程选项
stats.burninsun=会被阳光引燃
stats.amplify=增益
stats.melee=近战
+stats.disabledamage=禁止伤害
+stats.disabletrue=伤害目前在属性中被禁用
stats.regenhealth=正常生命恢复
stats.combatregen=受攻击生命恢复
+stats.naturallydespawns=自然消失
+stats.aimWhileShooting=射击时瞄准
+stats.potionImmune=免疫药水
+stats.attackInvisible=攻击隐藏
+stats.never=从不
+stats.inWater=在水里
+stats.inAir=在空气中
+
stats.size=尺寸
stats.speed=速度
stats.glows=发光
+stats.noglow=不发光
stats.hasgravity=受重力影响
stats.explosive=爆炸
stats.rangedeffect=效果
@@ -241,6 +413,8 @@ stats.spin=旋转
stats.stick=穿透目标
stats.regular=无增益
stats.amplified=增益
+stats.explosion=爆炸
+
ai.standing=站立
ai.wandering=游荡
ai.movingpath=路径移动
@@ -260,11 +434,27 @@ ai.rangemelee=使用远程攻击
ai.tacticalvariant=战术变换
ai.cobwebAffected=蜘蛛网对其是否有效
ai.movement=移动
+ai.combatpolicy=战斗策略
+ai.jump=跳跃
+ai.pounce=突袭
+
+movement.ground=地面
+movement.flying=飞行
+fly.speed=飞行速度
+fly.gravity=飞行重力
+
aitactics.rush=突袭
aitactics.stagger=闪避
aitactics.orbit=包围
+aitactics.hitandrun=游击
aitactics.ambush=伏击
aitactics.stalk=偷袭
+
+aicombat.flip=翻转
+aicombat.brute=仇视
+aicombat.stubborn=固执
+aicombat.tactical=战术
+
advanced.idlesound=正常音效
advanced.angersound=愤怒音效
advanced.hurtsound=受攻击音效
@@ -277,6 +467,8 @@ advanced.editingmode=编辑模式
advanced.loadday=加载白天设置
advanced.loadnight=加载夜晚设置
advanced.haspitch=游戏中显示
+advanced.marks=标志
+
faction.hostiles=敌对阵营
faction.unfriendly=不友好
faction.neutral=中立
@@ -292,6 +484,7 @@ faction.options=阵营选项
faction.increasepoints=阵营 %s提高了了 %s 点数
faction.decreasepoints=阵营 %s降低了 %s 点数
faction.attacked=被其他生物攻击
+
menu.inventory=物品
menu.display=外形设置
menu.stats=属性设置
@@ -300,17 +493,39 @@ menu.ai=AI
menu.advanced=高级设置
menu.global=全局设置
menu.role=职业设置
+menu.animations=动画
menu.quests=任务
+
+cloner.tagFilters=标签过滤
+cloner.tagVisibility=标签的可见性
+cloner.wandTags=魔杖标签
+cloner.npcTags=NPC标签
+cloner.selectedTags=选择标签
+cloner.order=排序
+cloner.ascending=上升
+cloner.descending=下降
+cloner.type=排序类型
+cloner.name=名字
+cloner.date=日期
+cloner.wandtagsapplied=魔杖标签将被应用
+
+tags.allTags=所有标签
+tags.selectedTags=选择标签
+tags.tags=标签
+
global.banks=储存档案
global.transport=传送档案
global.playerdata=玩家档案
global.recipes=NPC合成表
global.naturalspawn=自然生成设置
+global.linked=链接
+
bank.slot=数量
bank.unlock=解锁
bank.upgrade=升级
bank.upgradeCosts=升级费用
bank.unlockCosts=解锁费用
+
follower.waiting=等待
follower.following=跟随
follower.hire=雇佣
@@ -321,6 +536,9 @@ follower.day=天
follower.days=天
follower.hireText=感谢雇佣。
follower.farewellText=时限已到。但愿我们下次还能再见。
+follower.infiniteDays=无限天
+follower.guiDisabled=禁用Gui
+follower.allowSoulstone=允许灵魂石
transporter.travel=传送
transporter.unlock=传送点%s已可使用
@@ -349,7 +567,29 @@ dialog.option=对话选项
dialog.roleoption=身份选项
dialog.commandoption=指令选项
dialog.commandoptionplayer=使用 "@dp" 来指代正在进行对话的玩家
-
+dialog.commandmultiple=使用“@x”分割命令以追加多个
+dialog.hideNPC=隐藏NPC
+dialog.showWheel=显示对话框
+dialog.disableEsc=禁用Esc
+dialog.visualOption=视觉选项
+dialog.darkenScreen=屏幕变黑
+dialog.renderType=呈现类型
+dialog.instant=即时
+dialog.gradual=逐渐
+dialog.previousBlocks=上一个文本块
+dialog.textOffset=文本抵消
+dialog.titleOffset=标题抵消
+dialog.optionOffset=选择抵消
+dialog.optionSpacing=选择间距
+dialog.textSound=文本声音
+dialog.textPitch=文本间距
+dialog.textureOffset=材质偏移
+dialog.selectedColor=选择颜色
+dialog.optionLine=选项线
+dialog.npcScale=NPC 比例
+dialog.npcOffset=NPC 偏移
+dialog.titleColor=标题颜色
+dialog.titlePos=标题的位置
quest.quest=任务
quest.quests=任务
@@ -358,6 +598,7 @@ quest.kill=击杀任务
quest.areakill=定点击杀任务
quest.dialog=对话任务
quest.location=定点任务
+quest.manual=手工任务
quest.completedtext=完成文本
quest.questlogtext=任务简绍
quest.complete=任务完成
@@ -380,15 +621,82 @@ quest.randomitem=随机物品
quest.exp=经验值
quest.takeitems=是否拿取玩家物品
quest.objectives=目标
+quest.track=追踪
+quest.tracking=追踪
+quest.alerts=提醒
+quest.noAlerts=无提醒
+script.apidoc=API 文档
+script.apisrc=API 源
+
+script.scripts=脚本
+script.hooks=钩子
+script.loadscript=加载脚本
+script.openfolder=打开脚本文件夹
script.init=运行
script.interact=对话
script.update=更新
script.console=控制台
script.language=语言
script.damaged=伤害
+script.killed=杀死
+script.attack=攻击
+script.target=注视
+script.timer=时间
+script.targetLost=目标丢失
+script.projectileTick=Proj. Tick
+script.projectileImpact=Proj. Impact
script.availableScripts=激活的脚本
script.loadedScripts=载入的脚本
+script.collide=碰撞
+script.kills=死亡
+script.dialog_closed=对话关闭
+
+eventscript.eventScripts=事件脚本
+eventscript.playerevent=玩家事件
+
+playerscript.disabled=禁用
+playerscript.attack=攻击
+playerscript.breakBlock=受击
+playerscript.chat=聊天
+playerscript.containerclosed=关闭箱子
+playerscript.containerOpen=打开箱子
+playerscript.damagedEntity=实体受伤
+playerscript.damaged=伤害
+playerscript.killed=杀死
+playerscript.factionupdate=阵营更新
+playerscript.init=初始化
+playerscript.interact=交互
+playerscript.keyPressed=按下按键
+playerscript.kills=死亡
+playerscript.levelUp=升级
+playerscript.login=登录
+playerscript.logout=登出
+playerscript.pickUp=拾取
+playerscript.rangedCharge=箭矢蓄力
+playerscript.rangedLaunched=射出箭矢
+playerscript.toss=投掷物品
+playerscript.drop=丢出物品
+playerscript.tick=更新
+playerscript.pickupXP=拾取经验
+playerscript.timer=计时器
+playerscript.mouseClicked=鼠标点击
+playerscript.startItem=Item Start
+playerscript.usingItem=使用物品
+playerscript.stopItem=Item Stop
+playerscript.finishItem=Item Finish
+playerscript.playSound=播放声音
+playerscript.lightning=雷击
+playerscript.fall=跌落
+playerscript.jump=跳跃
+playerscript.respawn=复活
+playerscript.changedDim=尺寸变更
+playerscript.useHoe=使用锄头
+playerscript.sleep=睡觉
+playerscript.wakeUp=睡醒
+playerscript.fillBucket=装桶
+playerscript.bonemeal=骨粉
+playerscript.achievement=成就
item.npcWand.name=Npc 魔杖
item.npcMobCloner.name=Mob 复制魔杖
@@ -396,6 +704,7 @@ item.npcMovingPath.name=Npc 路径魔杖
item.npcMounter.name=骑乘魔杖
item.npcTeleporter.name=传送魔杖
item.npcScripter.name=脚本魔杖
+item.scripted_item.name=脚本物品
item.npcBanjo.name=五弦琴
item.npcViolin.name=小提琴
@@ -442,6 +751,7 @@ item.npcEmeraldTrident.name=绿宝石三叉戟
item.npcCursedTrident.name=被诅咒的三叉戟
item.npcDemonicTrident.name=魔化三叉戟
item.npcFrostTrident.name=冰霜三叉戟
+item.npcMithrilTrident.name=秘银三叉戟
item.npcNatureSpell.name=自然魔咒
item.npcArcaneSpell.name=神秘魔咒
@@ -488,8 +798,9 @@ item.npcGoldenShield.name=金质圆盾
item.npcDiaShield.name=钻石圆盾
item.npcBronzeShield.name=青铜圆盾
item.npcEmeraldShield.name=绿宝石圆盾
-item.npcDemonicShield.name=魔化盾
-item.npcFrostShield.name=霜冻盾
+item.npcDemonicShield.name=魔化圆盾
+item.npcFrostShield.name=霜冻圆盾
+item.npcMithrilShield.name=秘银圆盾
item.npcFullWoodenShield.name=木盾
item.npcFullStoneShield.name=石盾
item.npcFullIronShield.name=铁盾
@@ -497,7 +808,9 @@ item.npcFullGoldenShield.name=金盾
item.npcFullDiaShield.name=钻盾
item.npcFullBronzeShield.name=青铜盾
item.npcFullEmeraldShield.name=绿宝石盾
-
+item.npcFullDemonicShield.name=魔化盾
+item.npcFullFrostShield.name=霜冻盾
+item.npcFullMithrilShield.name=秘银盾
item.npcTowerShield.name=尖钢盾
item.npcCryscentShield.name=新月钢盾
@@ -513,6 +826,7 @@ item.npcBronzeSpear.name=青铜战矛
item.npcEmeraldSpear.name=绿宝石战矛
item.npcDemonicSpear.name=魔化战矛
item.npcFrostSpear.name=霜冻战矛
+item.npcMithrilSpear.name=秘银战矛
item.npcWoodenBattleAxe.name=木制战斧
item.npcStoneBattleAxe.name=石制战斧
@@ -523,6 +837,7 @@ item.npcBronzeBattleAxe.name=青铜战斧
item.npcEmeraldBattleAxe.name=绿宝石战斧
item.npcDemonicBattleAxe.name=魔化战斧
item.npcFrostBattleAxe.name=霜冻战斧
+item.npcMithrilBattleAxe.name=秘银战斧
item.npcWoodenMace.name=木制钉头锤
item.npcStoneMace.name=石制钉头锤
@@ -533,6 +848,7 @@ item.npcBronzeMace.name=青铜钉头锤
item.npcEmeraldMace.name=绿宝石钉头锤
item.npcDemonicMace.name=魔化钉头锤
item.npcFrostMace.name=霜冻钉头锤
+item.npcMithrilMace.name=秘银钉头锤
item.npcWoodenDagger.name=木质匕首
item.npcStoneDagger.name=石质匕首
@@ -543,7 +859,7 @@ item.npcBronzeDagger.name=青铜匕首
item.npcEmeraldDagger.name=绿宝石匕首
item.npcDemonicDagger.name=魔化匕首
item.npcFrostDagger.name=霜冻匕首
-
+item.npcMithrilDagger.name=秘银匕首
item.npcWoodenReversedDagger.name=反手木质匕首
item.npcStoneReversedDagger.name=反手石质匕首
item.npcIronReversedDagger.name=反手铁质匕首
@@ -553,6 +869,7 @@ item.npcBronzeReversedDagger.name=反手青铜匕首
item.npcEmeraldReversedDagger.name=反手绿宝石匕首
item.npcDemonicReversedDagger.name=反手魔化匕首
item.npcFrostReversedDagger.name=反手霜冻匕首
+item.npcMithrilReversedDagger.name=反手秘银匕首
item.npcWoodenStaff.name=木质法杖
item.npcStoneStaff.name=石质法杖
@@ -564,6 +881,7 @@ item.npcEmeraldStaff.name=绿宝石法杖
item.npcElementalStaff.name=元素法杖
item.npcDemonicStaff.name=魔化法杖
item.npcFrostStaff.name=冰霜法杖
+item.npcMithrilStaff.name=秘银法杖
item.npcWoodenScythe.name=木制战镰
item.npcStoneScythe.name=木制战镰
@@ -574,6 +892,7 @@ item.npcDiamondScythe.name=钻石战镰
item.npcEmeraldScythe.name=绿宝石战镰
item.npcDemonicScythe.name=魔化战镰
item.npcFrostScythe.name=霜冻战镰
+item.npcMithrilScythe.name=秘银战镰
item.npcWoodenGlaive.name=木制月刃
item.npcStoneGlaive.name=石制月刃
@@ -584,6 +903,7 @@ item.npcBronzeGlaive.name=青铜月刃
item.npcEmeraldGlaive.name=绿宝石月刃
item.npcDemonicGlaive.name=魔化月刃
item.npcFrostGlaive.name=霜冻月刃
+item.npcMithrilGlaive.name=秘银月刃
item.npcCowleatherHead.name=牛皮革帽
item.npcCowleatherChest.name=牛皮胸甲
@@ -637,13 +957,22 @@ item.npcSoldierHead.name=士兵钢盔
item.npcSoldierChest.name=士兵钢甲
item.npcSoldierLegs.name=士兵军靴
item.npcSoldierBottom.name=士兵绑腿
-(实际上矮人觉得有点像战锤40k里的卡迪安..帝国卫队)
item.npcX407Head.name=X407 原型钢盔
item.npcX407Chest.name=X407 原型钢甲
item.npcX407Legs.name=X407 原型护腿
item.npcX407Boots.name=X407 原型战靴
+item.npcMithrilHead.name=秘银覆面盔
+item.npcMithrilChest.name=秘银重甲
+item.npcMithrilLegs.name=秘银护腿
+item.npcMithrilBoots.name=秘银靴子
+
+item.npcDemonicHead.name=魔化覆面盔
+item.npcDemonicChest.name=魔化重甲
+item.npcDemonicLegs.name=魔化护腿
+item.npcDemonicBoots.name=魔化靴子
+
item.npcCommissarHead.name=统帅军帽
item.npcCommissarChest.name=统帅胸甲
item.npcCommissarLegs.name=统帅军靴
@@ -700,6 +1029,7 @@ item.npcAmethyst.name=蓝宝石
item.npcRuby.name=红宝石
item.npcBronzeIngot.name=青铜锭
item.npcDemonicIngot.name=魔化锭
+item.npcMithrilIngot.name=秘银锭
item.npcMacuahuitl.name=双刃刀
item.npcBoStaff.name=长棍
@@ -714,6 +1044,7 @@ item.npcBronzeSword.name=青铜剑
item.npcEmeraldSword.name=绿宝石剑
item.npcDemonicSword.name=魔化剑
item.npcFrostSword.name=霜冻剑
+item.npcMithrilSword.name=秘银剑
item.npcAncientCoin.name=远古硬币
item.npcAncientScroll.name=远古卷轴
@@ -733,7 +1064,7 @@ item.npcEmeraldHalberd.name=绿宝石战戟
item.npcCursedHalberd.name=被诅咒的战戟
item.npcDemonicHalberd.name=恶魔战戟
item.npcFrostHalberd.name=霜冻战戟
-
+item.npcMithrilHalberd.name=秘银战戟
item.npcWoodenWarhammer.name=木制战锤
item.npcStoneWarhammer.name=石制战锤
@@ -745,26 +1076,165 @@ item.npcEmeraldWarhammer.name=绿宝石战锤
item.npcCursedWarhammer.name=被诅咒的战锤
item.npcDemonicWarhammer.name=恶魔战锤
item.npcFrostWarhammer.name=霜冻战锤
-
+item.npcMithrilWarhammer.name=秘银战锤
item.npcChainSkirt.name=锁链裙子
item.npcLeatherSkirt.name=皮革裙子
item.npcGoldSkirt.name=金质裙子
item.npcIronSkirt.name=铁质裙子
item.npcDiamondSkirt.name=钻石裙子
+item.npcEmeraldSkirt.name=绿宝石裙子
+item.npcBronzeSkirt.name=铜质裙子
+item.npcDemonicSkirt.name=魔化裙子
+item.npcMithrilSkirt.name=秘银裙子
+
+item.npcWoodenBroadsword.name=木质阔剑
+item.npcStoneBroadsword.name=石质阔剑
+item.npcIronBroadsword.name=铁质阔剑
+item.npcGoldenBroadsword.name=金质阔剑
+item.npcDiamondBroadsword.name=钻石阔剑
+item.npcBronzeBroadsword.name=青铜阔剑
+item.npcEmeraldBroadsword.name=绿宝石阔剑
+item.npcCursedBroadsword.name=被诅咒的阔剑
+item.npcDemonicBroadsword.name=魔化阔剑
+item.npcFrostBroadsword.name=霜冻阔剑
+item.npcMithrilBroadsword.name=秘银阔剑
+
+item.npcSoulstoneEmpty.name=灵魂石空
+item.npcSoulstoneFilled.name=灵魂石满
+
+item.npcHeart.name=心脏
+item.npcMoney.name=钱
+item.npcNecklace.name=项链
+item.npcUsbStick.name=U盘
enchantment.damage=伤害
enchantment.confusion=反胃
enchantment.infinite=无限
enchantment.poison=中毒
-entity.CustomNpc.name=自定义NPC
+movement.name=运动
+movement.type=移动类型
+movement.wanderinteract=与npc互动
+movement.sitting=坐
+movement.lying=躺
+movement.sneaking=潜行
+movement.dancing=跳舞
+movement.aiming=瞄准
+movement.animation=动画
+movement.rotation=旋转
+movement.body=身体
+movement.manual=手动
+movement.stalking=跟踪
+movement.head=头
+movement.pauses=暂停
+movement.stopinteract=停止互动
+movement.crawling=爬行
+movement.hug=拥抱
-item.npcWoodenBroadsword.name=木质阔剑item.npcStoneBroadsword.name=石质阔剑item.npcIronBroadsword.name=铁质阔剑item.npcGoldenBroadsword.name=金质阔剑item.npcDiamondBroadsword.name=钻石阔剑item.npcBronzeBroadsword.name=青铜阔剑
-item.npcEmeraldBroadsword.name=绿宝石阔剑item.npcCursedBroadsword.name=被诅咒的阔剑item.npcDemonicBroadsword.name=魔化阔剑item.npcFrostBroadsword.name=霜冻阔剑
-job.chunkloader=区块载入者
-job.conversation=群体对话
-stats.mindelay=最快攻速
-stats.maxdelay=最慢攻速
-stats.burstcount=连发次数
-stats.shotcount=单次射击弹药量
\ No newline at end of file
+model.head=头
+model.rarm=右手
+model.larm=左手
+model.arms=手臂
+model.body=身体
+model.lleg=左腿
+model.rleg=右腿
+model.legs=腿
+model.scale=比例
+model.animation=动画
+model.rotate=旋转
+model.pivot=枢轴
+model.load=模型加载
+model.save=模型保存
+model.sliders=滑标
+model.manual=手动
+
+puppet.standing=站
+puppet.walking=移动时
+puppet.attacking=攻击时
+puppet.animate=动画
+puppet.animSpeed=动画速度
+puppet.pivotX=枢轴 X
+puppet.pivotY=枢轴 Y
+puppet.pivotZ=枢轴 Z
+puppet.fullAngles=全角度
+
+animation.animation=动画
+animation.frame=帧
+animation.frames=帧数
+animation.framePart=帧部分
+animation.smoothing=平滑
+animation.linear=线性
+animation.smooth=平滑
+animation.loop=循环
+animation.tickType=Tick类型
+animation.mcTicks=MC Ticks
+animation.renderTicks=渲染tick
+animation.whileStanding=站
+animation.whileAttacking=攻击时
+animation.whileMoving=移动时
+animation.duration=持续时间
+animation.customized=自定义
+animation.rotations=旋转
+animation.pivots=枢轴
+animation.addFrame=添加一个帧以继续!
+animation.playing=播放
+animation.paused=暂停
+animation.stopped=停止
+animation.animationOptions=动画选项
+animation.frameOptions=帧选项
+
+guard.creepers=攻击爬行者
+guard.animals=攻击动物
+guard.mobs=攻击怪物
+guard.currentTargets=当前目标
+guard.availableTargets=可用目标
+guard.specifictargets=具体目标
+
+companion.baby =宝贝
+companion.child =孩子
+companion.teenager =少年
+companion.adult =成人
+companion.fullgrown =成年
+companion.age =年龄
+companion.stage =阶段
+companion.owner =所有者
+companion.strength =力量
+companion.talent =天赋
+companion.level =等级
+
+markov.generic.name=通用生成器
+markov.ancientGreek.name=古希腊
+markov.aztec.name=阿兹特克
+markov.classicCNPCs.name=经典cnpc
+markov.japanese.name=日本
+markov.oldNorse.name=古挪威
+markov.roman.name=罗马(拉丁)
+markov.sami.name=拉普兰德(萨米)
+markov.slavic.name=古波兰
+markov.welsh.name=布列塔尼(威尔士)
+markov.spanish.name=西班牙(拉丁美洲)
+
+markov.gender.name =性别
+markov.gender.either=任选其一
+markov.gender.female =女
+markov.gender.male =男
+markov.generate =生成
+
+mark.question =问题
+mark.exclamation =感叹
+mark.pointer =指针
+mark.skull =头骨
+mark.cross =交叉
+mark.star=星星
+
+tint.enable=启用自定义色彩
+tint.enablegeneral=启用常规色彩
+tint.enablehurt=启用伤害色彩
+tint.tint=一般色彩
+tint.alpha=Alpha
+tint.hurt=伤害色彩
+
+hitbox.hitbox=碰撞体积
+hitbox.width=宽度比例
+hitbox.height=身高比例
From 0bb5dee58fcc38a8b6365c65ff10de7482c772bd Mon Sep 17 00:00:00 2001
From: "Luis C.M." <42545778+c0508383@users.noreply.github.com>
Date: Wed, 22 Jan 2025 15:47:10 -0600
Subject: [PATCH 002/357] Change to animation frame API
---
src/api | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/api b/src/api
index 17d165e62..7bfe9b45d 160000
--- a/src/api
+++ b/src/api
@@ -1 +1 @@
-Subproject commit 17d165e62846b73b13f82af0e93b84704db4e11a
+Subproject commit 7bfe9b45d5a040d2779b3dfbf5ae385cced49cab
From 990419a411522fddeca6ba0a67183466301a9654 Mon Sep 17 00:00:00 2001
From: "Luis C.M." <42545778+c0508383@users.noreply.github.com>
Date: Wed, 22 Jan 2025 15:49:27 -0600
Subject: [PATCH 003/357] New event hooks and animation event class
---
src/main/java/noppes/npcs/EventHooks.java | 52 ++++++++-
.../noppes/npcs/constants/EnumScriptType.java | 7 +-
.../npcs/scripted/event/AnimationEvent.java | 108 ++++++++++++++++++
3 files changed, 163 insertions(+), 4 deletions(-)
create mode 100644 src/main/java/noppes/npcs/scripted/event/AnimationEvent.java
diff --git a/src/main/java/noppes/npcs/EventHooks.java b/src/main/java/noppes/npcs/EventHooks.java
index 43e6d570f..7848644ec 100644
--- a/src/main/java/noppes/npcs/EventHooks.java
+++ b/src/main/java/noppes/npcs/EventHooks.java
@@ -15,11 +15,12 @@ import net.minecraft.world.WorldServer;
import net.minecraftforge.event.entity.EntityEvent;
import net.minecraftforge.event.world.WorldEvent;
import noppes.npcs.api.IWorld;
-import noppes.npcs.api.entity.IEntity;
-import noppes.npcs.api.entity.IPlayer;
-import noppes.npcs.api.entity.IProjectile;
+import noppes.npcs.api.entity.*;
+import noppes.npcs.api.event.IAnimationEvent;
import noppes.npcs.api.gui.ICustomGui;
import noppes.npcs.api.gui.IItemSlot;
+import noppes.npcs.api.handler.data.IAnimation;
+import noppes.npcs.api.handler.data.IFrame;
import noppes.npcs.api.item.IItemCustom;
import noppes.npcs.api.item.IItemStack;
import noppes.npcs.constants.EnumScriptType;
@@ -803,4 +804,49 @@ public class EventHooks {
handler.callScript(EnumScriptType.PARTY_DISBAND, event);
NpcAPI.EVENT_BUS.post(event);
}
+
+ private static boolean postAnimationEvent(IAnimationEvent event) {
+ IScriptHandler handler;
+ IAnimatable animatable = event.getAnimation().getParent().getEntity();
+ if (animatable instanceof ICustomNpc>) {
+ EntityNPCInterface npc = (EntityNPCInterface) ((ICustomNpc>) animatable).getMCEntity();
+ handler = npc.script;
+ } else {
+ handler = ScriptController.Instance.playerScripts;
+ }
+
+ if (handler.isClient())
+ return false;
+
+ handler.callScript(event.getHookName(), (Event) event);
+ return NpcAPI.EVENT_BUS.post((Event) event);
+ }
+
+ public static boolean onAnimationStarted(IAnimation animation) {
+ if (animation.getParent() == null || animation.getParent().getEntity() == null) {
+ return false;
+ }
+ return postAnimationEvent(new AnimationEvent.Started(animation));
+ }
+
+ public static void onAnimationEnded(IAnimation animation) {
+ if (animation.getParent() == null || animation.getParent().getEntity() == null) {
+ return;
+ }
+ postAnimationEvent(new AnimationEvent.Ended(animation));
+ }
+
+ public static void onAnimationFrameEntered(IAnimation animation, IFrame frame) {
+ if (frame == null || animation.getParent() == null || animation.getParent().getEntity() == null) {
+ return;
+ }
+ postAnimationEvent(new AnimationEvent.FrameEvent.Entered(animation, frame));
+ }
+
+ public static void onAnimationFrameExited(IAnimation animation, IFrame frame) {
+ if (frame == null || animation.getParent() == null || animation.getParent().getEntity() == null) {
+ return;
+ }
+ postAnimationEvent(new AnimationEvent.FrameEvent.Exited(animation, frame));
+ }
}
diff --git a/src/main/java/noppes/npcs/constants/EnumScriptType.java b/src/main/java/noppes/npcs/constants/EnumScriptType.java
index a8f233f47..f8991d3f5 100644
--- a/src/main/java/noppes/npcs/constants/EnumScriptType.java
+++ b/src/main/java/noppes/npcs/constants/EnumScriptType.java
@@ -99,7 +99,12 @@ public enum EnumScriptType {
PARTY_INVITE("partyInvite"),
PARTY_KICK("partyKick"),
PARTY_LEAVE("partyLeave"),
- PARTY_DISBAND("partyDisband");
+ PARTY_DISBAND("partyDisband"),
+
+ ANIMATION_START("animationStart"),
+ ANIMATION_END("animationEnd"),
+ ANIMATION_FRAME_ENTER("frameEnter"),
+ ANIMATION_FRAME_EXIT("frameExit");
public String function;
diff --git a/src/main/java/noppes/npcs/scripted/event/AnimationEvent.java b/src/main/java/noppes/npcs/scripted/event/AnimationEvent.java
new file mode 100644
index 000000000..1690f8e57
--- /dev/null
+++ b/src/main/java/noppes/npcs/scripted/event/AnimationEvent.java
@@ -0,0 +1,108 @@
+package noppes.npcs.scripted.event;
+
+import cpw.mods.fml.common.eventhandler.Cancelable;
+import noppes.npcs.api.entity.IAnimatable;
+import noppes.npcs.api.event.IAnimationEvent;
+import noppes.npcs.api.handler.data.IAnimation;
+import noppes.npcs.api.handler.data.IAnimationData;
+import noppes.npcs.api.handler.data.IFrame;
+import noppes.npcs.constants.EnumScriptType;
+import noppes.npcs.controllers.data.Animation;
+import noppes.npcs.controllers.data.Frame;
+
+public abstract class AnimationEvent extends CustomNPCsEvent implements IAnimationEvent {
+ protected final IAnimation animation;
+ protected final IAnimationData animationData;
+ protected final IAnimatable entity;
+
+ public AnimationEvent(IAnimation animation) {
+ this.animation = animation;
+ this.animationData = animation.getParent();
+ this.entity = this.animationData.getEntity();
+ }
+
+ @Override
+ public IAnimation getAnimation() {
+ return this.animation;
+ }
+
+ @Override
+ public IAnimationData getAnimationData() {
+ return this.animationData;
+ }
+
+ @Override
+ public IAnimatable getEntity() {
+ return this.entity;
+ }
+
+ @Cancelable
+ public static class Started extends AnimationEvent {
+
+ public Started(IAnimation animation) {
+ super(animation);
+ }
+
+ @Override
+ public String getHookName() {
+ return EnumScriptType.ANIMATION_START.function;
+ }
+ }
+
+ public static class Ended extends AnimationEvent {
+
+ public Ended(IAnimation animation) {
+ super(animation);
+ }
+
+ @Override
+ public String getHookName() {
+ return EnumScriptType.ANIMATION_END.function;
+ }
+ }
+
+ public static abstract class FrameEvent extends AnimationEvent implements IFrameEvent {
+ private final IFrame frame;
+ private final int index;
+
+ public FrameEvent(IAnimation animation, IFrame frame) {
+ super(animation);
+ this.frame = frame;
+ this.index = ((Animation)this.getAnimation()).frames.indexOf((Frame) this.frame);
+ }
+
+ @Override
+ public int getIndex() {
+ return this.index;
+ }
+
+ @Override
+ public IFrame getFrame() {
+ return this.frame;
+ }
+
+ public static class Entered extends FrameEvent {
+
+ public Entered(IAnimation animation, IFrame frame) {
+ super(animation, frame);
+ }
+
+ @Override
+ public String getHookName() {
+ return EnumScriptType.ANIMATION_FRAME_ENTER.function;
+ }
+ }
+
+ public static class Exited extends FrameEvent {
+
+ public Exited(IAnimation animation, IFrame frame) {
+ super(animation, frame);
+ }
+
+ @Override
+ public String getHookName() {
+ return EnumScriptType.ANIMATION_FRAME_EXIT.function;
+ }
+ }
+ }
+}
From 572077b7e51f7a6251e6367afe014cdbf87ec63e Mon Sep 17 00:00:00 2001
From: "Luis C.M." <42545778+c0508383@users.noreply.github.com>
Date: Wed, 22 Jan 2025 18:54:00 -0600
Subject: [PATCH 004/357] Loads of changes from the animation branch
---
src/main/java/noppes/npcs/CommonProxy.java | 98 +++-
.../npcs/client/ClientEventHandler.java | 35 --
.../java/noppes/npcs/client/ClientProxy.java | 2 +
.../npcs/client/gui/SubGuiAnimationFrame.java | 43 +-
.../client/gui/SubGuiAnimationOptions.java | 24 +-
.../gui/global/GuiNPCEditAnimation.java | 70 ++-
.../gui/global/GuiNPCManageAnimations.java | 420 ++++++++--------
.../client/gui/script/GuiScriptPlayers.java | 4 +
.../npcs/controllers/data/Animation.java | 462 ++++++++++--------
.../npcs/controllers/data/AnimationData.java | 213 ++++++--
.../noppes/npcs/controllers/data/Frame.java | 326 ++++++------
.../controllers/data/PlayerDataScript.java | 2 +-
.../java/noppes/npcs/util/MillisTimer.java | 84 ++++
13 files changed, 1091 insertions(+), 692 deletions(-)
create mode 100644 src/main/java/noppes/npcs/util/MillisTimer.java
diff --git a/src/main/java/noppes/npcs/CommonProxy.java b/src/main/java/noppes/npcs/CommonProxy.java
index 067e2f1b3..4bf6458d7 100644
--- a/src/main/java/noppes/npcs/CommonProxy.java
+++ b/src/main/java/noppes/npcs/CommonProxy.java
@@ -1,7 +1,11 @@
package noppes.npcs;
import cpw.mods.fml.common.network.IGuiHandler;
+import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
+import net.minecraft.client.Minecraft;
import net.minecraft.client.model.ModelBiped;
+import net.minecraft.entity.Entity;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.inventory.Container;
@@ -14,19 +18,111 @@ import noppes.npcs.api.IWorld;
import noppes.npcs.blocks.tiles.TileNpcContainer;
import noppes.npcs.constants.EnumGuiType;
import noppes.npcs.containers.*;
+import noppes.npcs.controllers.data.AnimationData;
+import noppes.npcs.controllers.data.Frame;
import noppes.npcs.controllers.data.PlayerData;
import noppes.npcs.entity.EntityNPCInterface;
+import noppes.npcs.util.MillisTimer;
+
+import java.util.Collection;
+import java.util.ConcurrentModificationException;
+import java.util.HashSet;
public class CommonProxy implements IGuiHandler {
+ public final static HashSet clientPlayingAnimations = new HashSet<>();
+ public final static HashSet serverPlayingAnimations = new HashSet<>();
+ protected MillisTimer animationTimer = new MillisTimer(1000);
+ protected static long totalServerTicks;
+ protected static long totalClientTicks;
public boolean newVersionAvailable = false;
public int revision = 1;
public void load() {
+ this.createAnimationThread();
+
CustomNpcs.Channel.register(new PacketHandlerServer());
CustomNpcs.ChannelPlayer.register(new PacketHandlerPlayer());
}
+ protected void createAnimationThread() {
+ Thread thread = (new Thread("Animation Thread") { public void run() {
+ while (true) {
+ try {
+ if (!CustomNpcs.proxy.hasClient() || !Minecraft.getMinecraft().isGamePaused()) {
+ animationTimer.updateTimer();
+ }
+
+ for (int i = 0; i < animationTimer.elapsedTicks; ++i) {
+ updateData(totalClientTicks, clientPlayingAnimations);
+ totalClientTicks++;
+
+ updateData(totalServerTicks, serverPlayingAnimations);
+ totalServerTicks++;
+ }
+
+ totalClientTicks %= Long.MAX_VALUE;
+ totalServerTicks %= Long.MAX_VALUE;
+
+ synchronized (clientPlayingAnimations) {
+ clientPlayingAnimations.removeIf(CommonProxy.this::removeAnimation);
+ }
+ synchronized (serverPlayingAnimations) {
+ serverPlayingAnimations.removeIf(CommonProxy.this::removeAnimation);
+ }
+ } catch (Exception e) {
+ if (!(e instanceof ConcurrentModificationException)) {
+ e.printStackTrace();
+ }
+ }
+ }
+ }});
+ thread.setDaemon(true);
+ thread.start();
+ }
+
+ private void updateData(long ticks, Collection animationData) {
+ for (AnimationData data : animationData) {
+ Frame frame = data.animation != null && data.animation.currentFrame() != null
+ ? (Frame) data.animation.currentFrame() : null;
+ if (frame != null) {
+ int tickDuration = frame.tickDuration();
+ if (ticks % tickDuration == 0) {
+ data.increaseTime();
+ }
+ }
+ }
+ }
+
+ private boolean removeAnimation(AnimationData data) {
+ Entity entity = null;
+ if (data.parent instanceof DataDisplay) {
+ entity = ((DataDisplay)data.parent).npc;
+ } else {
+ if (data.parent instanceof PlayerData) {
+ entity = ((PlayerData) data.parent).player;
+ } else if (data.parent instanceof EntityPlayer) {
+ entity = (EntityPlayer) data.parent;
+ }
+ }
+
+ if (entity == null) return true;
+
+ if (entity.worldObj != null && entity.worldObj.isRemote) {
+ return clientRemoveAnimation(entity);
+ } else {
+ return entity.worldObj == null || !entity.worldObj.loadedEntityList.contains(entity)
+ || CustomNpcs.getServer().isServerStopped();
+ }
+ }
+
+ @SideOnly(Side.CLIENT)
+ private boolean clientRemoveAnimation(Entity entity) {
+ Minecraft mc = Minecraft.getMinecraft();
+ return mc.theWorld == null
+ || mc.currentScreen == null && entity != mc.thePlayer && !mc.theWorld.loadedEntityList.contains(entity);
+ }
+
public PlayerData getPlayerData(EntityPlayer player) {
return null;
}
@@ -166,4 +262,4 @@ public class CommonProxy implements IGuiHandler {
public boolean isGUIOpen(){
return false;
}
-}
\ No newline at end of file
+}
diff --git a/src/main/java/noppes/npcs/client/ClientEventHandler.java b/src/main/java/noppes/npcs/client/ClientEventHandler.java
index dfd5336f2..d8b576aa1 100644
--- a/src/main/java/noppes/npcs/client/ClientEventHandler.java
+++ b/src/main/java/noppes/npcs/client/ClientEventHandler.java
@@ -32,8 +32,6 @@ import java.lang.reflect.Field;
import java.util.*;
public class ClientEventHandler {
-
-
public static final RenderCNPCPlayer renderCNPCSelf = new RenderCNPCPlayer();
public static final RenderCNPCPlayer renderCNPCPlayer = new RenderCNPCPlayer();
public static HashMap disabledButtonTimes = new HashMap<>();
@@ -128,10 +126,7 @@ public class ClientEventHandler {
@SubscribeEvent
public void onRenderEntity(RenderLivingEvent.Post event) {
- AnimationData data = null;
if (event.entity instanceof EntityNPCInterface) {
- data = ClientEventHandler.renderingNpc.display.animationData;
-
MarkData markData = MarkData.get((EntityNPCInterface) event.entity);
EntityPlayer player = Minecraft.getMinecraft().thePlayer;
if(PlayerData.get(player) != null){
@@ -143,10 +138,6 @@ public class ClientEventHandler {
}
}
} else if (event.entity instanceof EntityPlayer) {
- if (ClientCacheHandler.playerAnimations.containsKey(event.entity.getUniqueID())) {
- data = ClientCacheHandler.playerAnimations.get(event.entity.getUniqueID());
- }
-
for (Map.Entry entry : ClientEventHandler.originalValues.entrySet()) {
ModelRenderer renderer = entry.getKey();
FramePart part = entry.getValue();
@@ -161,35 +152,9 @@ public class ClientEventHandler {
ClientEventHandler.playerModel = null;
}
- if (data != null && data.isActive() && !Minecraft.getMinecraft().isGamePaused()) {
- Animation animation = data.animation;
- if (data.isActive() && animation.currentFrame().useRenderTicks()) {
- animation.increaseTime();
- }
- }
-
ClientEventHandler.renderingNpc = null;
}
- @SubscribeEvent
- public void onUpdateEntity(LivingEvent.LivingUpdateEvent event) {
- if (FMLCommonHandler.instance().getEffectiveSide() == Side.CLIENT) {
- AnimationData data = null;
- if (event.entity instanceof EntityNPCInterface) {
- data = ((EntityNPCInterface) event.entity).display.animationData;
- } else if (event.entity instanceof EntityPlayer && ClientCacheHandler.playerAnimations.containsKey(event.entity.getUniqueID())) {
- data = ClientCacheHandler.playerAnimations.get(event.entity.getUniqueID());
- }
-
- if (data != null && data.isActive()) {
- Animation animation = data.animation;
- if (data.isActive() && !animation.currentFrame().useRenderTicks()) {
- animation.increaseTime();
- }
- }
- }
- }
-
@SubscribeEvent
public void onRenderPlayer(RenderPlayerEvent.Pre event) {
ClientEventHandler.renderingPlayer = event.entityPlayer;
diff --git a/src/main/java/noppes/npcs/client/ClientProxy.java b/src/main/java/noppes/npcs/client/ClientProxy.java
index b13a75387..bd80d8532 100644
--- a/src/main/java/noppes/npcs/client/ClientProxy.java
+++ b/src/main/java/noppes/npcs/client/ClientProxy.java
@@ -80,6 +80,8 @@ public class ClientProxy extends CommonProxy {
public static FontContainer Font;
public void load() {
+ this.createAnimationThread();
+
Font = new FontContainer(ConfigClient.FontType, ConfigClient.FontSize);
createFolders();
CustomNpcs.Channel.register(new PacketHandlerClient());
diff --git a/src/main/java/noppes/npcs/client/gui/SubGuiAnimationFrame.java b/src/main/java/noppes/npcs/client/gui/SubGuiAnimationFrame.java
index 89254ce2d..62837a495 100644
--- a/src/main/java/noppes/npcs/client/gui/SubGuiAnimationFrame.java
+++ b/src/main/java/noppes/npcs/client/gui/SubGuiAnimationFrame.java
@@ -10,7 +10,6 @@ public class SubGuiAnimationFrame extends SubGuiInterface implements ITextfieldL
public SubGuiAnimationFrame(Frame editingFrame) {
this.editingFrame = editingFrame;
setBackground("smallbg.png");
- this.closeOnEsc = true;
}
@Override
@@ -19,36 +18,42 @@ public class SubGuiAnimationFrame extends SubGuiInterface implements ITextfieldL
//
//customized - button, enables all the following options.
this.addLabel(new GuiNpcLabel(10, "animation.customized", guiLeft + 5, guiTop + 16));
- this.addButton(new GuiNpcButton(10, guiLeft + 65, guiTop + 10, 30, 20, new String[]{"gui.yes", "gui.no"}, editingFrame.isCustomized() ? 0 : 1));
+ this.addButton(new GuiNpcButton(10, guiLeft + 75, guiTop + 10, 30, 20, new String[]{"gui.yes", "gui.no"}, editingFrame.isCustomized() ? 0 : 1));
if (editingFrame.isCustomized()) {
//
//speed - textfield
- this.addLabel(new GuiNpcLabel(11, "stats.speed", guiLeft + 5, guiTop + 36));
- this.addTextField(new GuiNpcTextField(11, this, guiLeft + 65, guiTop + 32, 30, 15, editingFrame.speed + ""));
+ this.addLabel(new GuiNpcLabel(11, "stats.speed", guiLeft + 5, guiTop + 42));
+ this.addTextField(new GuiNpcTextField(11, this, guiLeft + 75, guiTop + 37, 30, 15, editingFrame.speed + ""));
this.getTextField(11).floatsOnly = true;
this.getTextField(11).setMinMaxDefaultFloat(0, Float.MAX_VALUE, 1.0F);
//
//smooth - button
- this.addLabel(new GuiNpcLabel(12, "animation.smoothing", guiLeft + 5, guiTop + 58));
- this.addButton(new GuiNpcButton(12, guiLeft + 65, guiTop + 52, 60, 20, new String[]{"animation.smooth", "animation.linear", "gui.none"}, editingFrame.smooth));
+ this.addLabel(new GuiNpcLabel(12, "animation.smoothing", guiLeft + 5, guiTop + 63));
+ this.addButton(new GuiNpcButton(12, guiLeft + 75, guiTop + 55, 60, 20, new String[]{"animation.smooth", "animation.linear", "gui.none"}, editingFrame.smooth));
//
- //ticks - button
- this.addLabel(new GuiNpcLabel(13, "animation.tickType", guiLeft + 5, guiTop + 78));
- this.addButton(new GuiNpcButton(13, guiLeft + 65, guiTop + 72, 75, 20, new String[]{"animation.renderTicks", "animation.mcTicks"}, editingFrame.renderTicks ? 0 : 1));
+ //tick duration - textfield
+ this.addLabel(new GuiNpcLabel(13, "animation.tickDuration", guiLeft + 5, guiTop + 84));
+ this.addTextField(new GuiNpcTextField(13, this, guiLeft + 75, guiTop + 79, 40, 15, editingFrame.tickDuration + ""));
+ this.getTextField(13).integersOnly = true;
+ this.getTextField(13).setMinMaxDefault(1, Integer.MAX_VALUE, 50);
}
+
+ this.addLabel(new GuiNpcLabel(14, "Comment", guiLeft + 5, guiTop + 106));
+ this.addTextField(new GuiNpcTextField(14, this, guiLeft + 50, guiTop + 101, 120, 15, editingFrame.getComment()));
}
@Override
protected void actionPerformed(GuiButton guibutton) {
super.actionPerformed(guibutton);
- int value = ((GuiNpcButton)guibutton).getValue();
+ if (this.editingFrame == null) {
+ return;
+ }
- if (guibutton.id == 10 && editingFrame != null) {
+ int value = ((GuiNpcButton)guibutton).getValue();
+ if (guibutton.id == 10) {
editingFrame.setCustomized(!editingFrame.isCustomized());
- } else if (guibutton.id == 12 && editingFrame != null) {
+ } else if (guibutton.id == 12) {
editingFrame.smooth = (byte) value;
- } else if (guibutton.id == 13 && editingFrame != null) {
- editingFrame.renderTicks = value == 0;
}
initGui();
@@ -56,8 +61,16 @@ public class SubGuiAnimationFrame extends SubGuiInterface implements ITextfieldL
@Override
public void unFocused(GuiNpcTextField textfield) {
- if (textfield.id == 11 && this.editingFrame != null) {
+ if (this.editingFrame == null) {
+ return;
+ }
+
+ if (textfield.id == 11) {
this.editingFrame.speed = textfield.getFloat();
+ } else if (textfield.id == 13) {
+ this.editingFrame.tickDuration = textfield.getInteger();
+ } else if (textfield.id == 14) {
+ this.editingFrame.setComment(textfield.getText());
}
}
}
diff --git a/src/main/java/noppes/npcs/client/gui/SubGuiAnimationOptions.java b/src/main/java/noppes/npcs/client/gui/SubGuiAnimationOptions.java
index 5a021a406..1f3b7f0d1 100644
--- a/src/main/java/noppes/npcs/client/gui/SubGuiAnimationOptions.java
+++ b/src/main/java/noppes/npcs/client/gui/SubGuiAnimationOptions.java
@@ -1,18 +1,15 @@
package noppes.npcs.client.gui;
import net.minecraft.client.gui.GuiButton;
-import noppes.npcs.client.gui.util.GuiNpcButton;
-import noppes.npcs.client.gui.util.GuiNpcLabel;
-import noppes.npcs.client.gui.util.SubGuiInterface;
+import noppes.npcs.client.gui.util.*;
import noppes.npcs.controllers.data.Animation;
-public class SubGuiAnimationOptions extends SubGuiInterface {
+public class SubGuiAnimationOptions extends SubGuiInterface implements ITextfieldListener {
private final Animation animation;
public SubGuiAnimationOptions(Animation animation) {
this.animation = animation;
setBackground("smallbg.png");
- this.closeOnEsc = true;
}
@Override
@@ -20,8 +17,10 @@ public class SubGuiAnimationOptions extends SubGuiInterface {
super.initGui();
//
//ticks - button
- this.addLabel(new GuiNpcLabel(10, "animation.tickType", guiLeft + 5, guiTop + 16));
- this.addButton(new GuiNpcButton(10, guiLeft + 60, guiTop + 10, 75, 20, new String[]{"animation.renderTicks", "animation.mcTicks"}, animation.renderTicks ? 0 : 1));
+ this.addLabel(new GuiNpcLabel(10, "animation.tickDuration", guiLeft + 5, guiTop + 16));
+ this.addTextField(new GuiNpcTextField(10, this, guiLeft + 80, guiTop + 12, 40, 15, animation.tickDuration + ""));
+ this.getTextField(10).integersOnly = true;
+ this.getTextField(10).setMinMaxDefault(1, Integer.MAX_VALUE, 50);
//
//whileStanding - button
this.addLabel(new GuiNpcLabel(11, "animation.whileStanding", guiLeft + 5, guiTop + 36));
@@ -41,9 +40,7 @@ public class SubGuiAnimationOptions extends SubGuiInterface {
super.actionPerformed(guibutton);
int value = ((GuiNpcButton)guibutton).getValue();
- if (guibutton.id == 10) {
- animation.renderTicks = value == 0;
- } else if (guibutton.id == 11) {
+ if (guibutton.id == 11) {
animation.whileStanding = value == 0;
} else if (guibutton.id == 12) {
animation.whileAttacking = value == 0;
@@ -53,4 +50,11 @@ public class SubGuiAnimationOptions extends SubGuiInterface {
initGui();
}
+
+ @Override
+ public void unFocused(GuiNpcTextField textfield) {
+ if (textfield.id == 10) {
+ animation.tickDuration = textfield.getInteger();
+ }
+ }
}
diff --git a/src/main/java/noppes/npcs/client/gui/global/GuiNPCEditAnimation.java b/src/main/java/noppes/npcs/client/gui/global/GuiNPCEditAnimation.java
index 70c3a9470..73541f2d0 100644
--- a/src/main/java/noppes/npcs/client/gui/global/GuiNPCEditAnimation.java
+++ b/src/main/java/noppes/npcs/client/gui/global/GuiNPCEditAnimation.java
@@ -23,14 +23,16 @@ import java.util.Map;
public class GuiNPCEditAnimation extends GuiModelInterface implements ITextfieldListener, ISliderListener, ISubGuiListener {
private final Animation animation;
+ private static int partEditMode;
+ private static int sliderSelection = 0;
+ private static Frame copiedFrame;
+
private EnumAnimationPart editingPart = EnumAnimationPart.HEAD;
private int frameIndex = 0;
public boolean playingAnimation = false;
private Frame prevFrame;
private final GuiScreen parent;
private long prevTick;
- private static int partEditMode;
- private static int sliderSelection = 0;
private final GuiNpcSlider[] rotationSliders = new GuiNpcSlider[3];
private final GuiNpcSlider[] pivotSliders = new GuiNpcSlider[3];
@@ -49,7 +51,7 @@ public class GuiNPCEditAnimation extends GuiModelInterface implements ITextfield
this.animation = animation;
AnimationData data = npc.display.animationData;
- data.animation = animation;
+ data.setAnimation(animation);
data.setEnabled(true);
int bodyPartX = 280;
@@ -92,9 +94,9 @@ public class GuiNPCEditAnimation extends GuiModelInterface implements ITextfield
AnimationData data = npc.display.animationData;
if (!playingAnimation) {
- data.animation = new Animation();
+ data.setAnimation(new Animation());
data.animation.smooth = animation.smooth;
- data.animation.renderTicks = animation.renderTicks;
+ data.animation.tickDuration = 50;
data.animation.loop = 0;
if (editingFrame != null) {
data.animation.frames.add(editingFrame);
@@ -107,7 +109,7 @@ public class GuiNPCEditAnimation extends GuiModelInterface implements ITextfield
if (!frame.isCustomized()) {
frame.speed = animation.speed;
frame.smooth = animation.smooth;
- frame.renderTicks = animation.renderTicks;
+ frame.tickDuration = animation.tickDuration();
}
for (Map.Entry entry : frame.frameParts.entrySet()) {
FramePart part = entry.getValue();
@@ -401,13 +403,7 @@ public class GuiNPCEditAnimation extends GuiModelInterface implements ITextfield
AnimationData data = npc.display.animationData;
if (guibutton.id == 11) {
- if (frameIndex < animation.frames.size() - 1) {
- animation.frames.add(frameIndex + 1, new Frame(10));
- } else {
- animation.frames.add(new Frame(10));
- }
- this.frameIndex = frameIndex + 1;
- updateFrameSlider();
+ this.addFrame();
} else if (guibutton.id == 12) {
animation.frames.remove(frameIndex);
updateFrameSlider();
@@ -475,7 +471,7 @@ public class GuiNPCEditAnimation extends GuiModelInterface implements ITextfield
}
}
this.playingAnimation = true;
- data.animation = animation;
+ data.setAnimation(this.animation);
data.animation.paused = false;
} else if (guibutton.id == 201) {
data.animation.paused = true;
@@ -501,6 +497,20 @@ public class GuiNPCEditAnimation extends GuiModelInterface implements ITextfield
initGui();
}
+ private void addFrame() {
+ this.addFrame(new Frame(10));
+ }
+
+ private void addFrame(Frame frame) {
+ if (frameIndex < animation.frames.size() - 1) {
+ animation.frames.add(frameIndex + 1, frame);
+ } else {
+ animation.frames.add(frame);
+ }
+ this.frameIndex = frameIndex + 1;
+ updateFrameSlider();
+ }
+
@Override
public void drawScreen(int par1, int par2, float par3)
{
@@ -510,12 +520,8 @@ public class GuiNPCEditAnimation extends GuiModelInterface implements ITextfield
this.playingAnimation = false;
initGui();
} else if (data.isActive()) {
- Frame currentFrame = (Frame) data.animation.currentFrame();
long time = mc.theWorld.getTotalWorldTime();
if (time != prevTick) {
- if (currentFrame != null && !currentFrame.renderTicks) {
- data.animation.increaseTime();
- }
GuiNpcLabel label = this.getLabel(213);
if (label != null) {
label.label += ".";
@@ -533,8 +539,8 @@ public class GuiNPCEditAnimation extends GuiModelInterface implements ITextfield
int sliderFrame = i + this.frameOffset;
if (sliderFrame >= this.animation.frames.size()) {
- button.color = 0x0;
- button.alpha = 0.3F;
+ button.color = 0x0;
+ button.alpha = 0.3F;
} else {
button.color = this.animation.frames.get(sliderFrame).getColorMarker();
if ((sliderFrame == this.animation.currentFrame && this.playingAnimation) || sliderFrame == this.frameIndex) {
@@ -643,4 +649,28 @@ public class GuiNPCEditAnimation extends GuiModelInterface implements ITextfield
editingFrame.setColorMarker(((SubGuiColorSelector) subgui).color);
}
}
+
+ @Override
+ public void keyTyped(char par1, int par2) {
+ super.keyTyped(par1, par2);
+
+ if (GuiScreen.isCtrlKeyDown() && par2 != 29 && !GuiNpcTextField.isFieldActive()) {
+ switch (par2) {
+ case 46:
+ if (this.editingFrame() != null) {
+ copiedFrame = this.editingFrame();
+ }
+ break;
+ case 47:
+ if (copiedFrame != null) {
+ Frame frame = new Frame(10);
+ frame.parent = this.animation;
+ frame.readFromNBT(copiedFrame.writeToNBT());
+ this.addFrame(frame);
+ this.initGui();
+ }
+ break;
+ }
+ }
+ }
}
diff --git a/src/main/java/noppes/npcs/client/gui/global/GuiNPCManageAnimations.java b/src/main/java/noppes/npcs/client/gui/global/GuiNPCManageAnimations.java
index cbcdd0ed1..312e5a5e8 100644
--- a/src/main/java/noppes/npcs/client/gui/global/GuiNPCManageAnimations.java
+++ b/src/main/java/noppes/npcs/client/gui/global/GuiNPCManageAnimations.java
@@ -19,251 +19,247 @@ import java.util.Vector;
public class GuiNPCManageAnimations extends GuiModelInterface2 implements IScrollData,ICustomScrollListener,ITextfieldListener, IGuiData, ISubGuiListener, GuiYesNoCallback
{
- private GuiCustomScroll scrollAnimations;
- private HashMap data = new HashMap();
- private Animation animation = new Animation();
- public boolean playingAnimation = false;
- private long prevTick;
- private String selected = null;
- private String search = "";
+ private GuiCustomScroll scrollAnimations;
+ private HashMap data = new HashMap();
+ private Animation animation = new Animation();
+ public boolean playingAnimation = false;
+ private long prevTick;
+ private String selected = null;
+ private String search = "";
public GuiNPCManageAnimations(EntityNPCInterface npc, boolean save)
{
- super(npc);
- this.setSave(save);
- this.xOffset = -148 + 70;
- this.yOffset = -170 + 137;
- Client.sendData(EnumPacketServer.AnimationsGet);
+ super(npc);
+ this.setSave(save);
+ this.xOffset = -148 + 70;
+ this.yOffset = -170 + 137;
+ Client.sendData(EnumPacketServer.AnimationsGet);
- AnimationData data = npc.display.animationData;
- data.setEnabled(true);
+ AnimationData data = npc.display.animationData;
+ data.setEnabled(true);
}
public void initGui()
{
super.initGui();
- this.addButton(new GuiNpcButton(0,guiLeft + 368, guiTop + 8, 45, 20, "gui.add"));
- this.addButton(new GuiNpcButton(1,guiLeft + 368, guiTop + 32, 45, 20, "gui.remove"));
+ this.addButton(new GuiNpcButton(0,guiLeft + 368, guiTop + 8, 45, 20, "gui.add"));
+ this.addButton(new GuiNpcButton(1,guiLeft + 368, guiTop + 32, 45, 20, "gui.remove"));
- if(scrollAnimations == null){
- scrollAnimations = new GuiCustomScroll(this,0, 0);
- scrollAnimations.setSize(143, 185);
- }
+ if(scrollAnimations == null){
+ scrollAnimations = new GuiCustomScroll(this,0, 0);
+ scrollAnimations.setSize(143, 185);
+ }
scrollAnimations.guiLeft = guiLeft + 220;
scrollAnimations.guiTop = guiTop + 4;
- addScroll(scrollAnimations);
- addTextField(new GuiNpcTextField(55, this, fontRendererObj, guiLeft + 220, guiTop + 192, 143, 20, search));
+ addScroll(scrollAnimations);
+ addTextField(new GuiNpcTextField(55, this, fontRendererObj, guiLeft + 220, guiTop + 192, 143, 20, search));
- if (animation.id == -1)
- return;
+ if (animation.id == -1)
+ return;
- addLabel(new GuiNpcLabel(10,"ID", guiLeft + 368, guiTop + 192));
- addLabel(new GuiNpcLabel(11, animation.id + "", guiLeft + 368, guiTop + 192 + 10));
+ addLabel(new GuiNpcLabel(10,"ID", guiLeft + 368, guiTop + 192));
+ addLabel(new GuiNpcLabel(11, animation.id + "", guiLeft + 368, guiTop + 192 + 10));
- AnimationData data = npc.display.animationData;
- if (!playingAnimation) {
- data.animation = new Animation();
- data.animation.smooth = animation.smooth;
- data.animation.renderTicks = animation.renderTicks;
- data.animation.loop = 0;
+ AnimationData data = npc.display.animationData;
+ if (!playingAnimation) {
+ data.setAnimation(new Animation());
+ data.animation.smooth = animation.smooth;
+ data.animation.tickDuration = 50;
+ data.animation.loop = 0;
- if (this.animation.frames.size() > 0) {
- Frame firstFrame = new Frame();
- firstFrame.parent = data.animation;
- firstFrame.readFromNBT(this.animation.frames.get(0).writeToNBT());
- data.animation.addFrame(firstFrame);
- }
- }
+ if (this.animation.frames.size() > 0) {
+ Frame firstFrame = new Frame();
+ firstFrame.parent = data.animation;
+ firstFrame.readFromNBT(this.animation.frames.get(0).writeToNBT());
+ data.animation.addFrame(firstFrame);
+ }
+ }
- if (animation != null) {
- this.addButton(new GuiNpcButton(100, guiLeft + 10, guiTop + 192, 45, 20, "gui.edit"));
- }
+ if (animation != null) {
+ this.addButton(new GuiNpcButton(100, guiLeft + 10, guiTop + 192, 45, 20, "gui.edit"));
+ }
- String animTexture = "customnpcs:textures/gui/animation.png";
- int playButtonOffsetX = 140;
- if (animation != null && !animation.frames.isEmpty()) {
- if (!this.playingAnimation || data.animation.paused) {//Play
- this.addLabel(new GuiNpcLabel(90, data.animation.paused ? "animation.paused" : "animation.stopped", guiLeft + playButtonOffsetX - 15, guiTop + 198));
- if (data.animation.paused) {
- this.addLabel(new GuiNpcLabel(94, "", guiLeft + playButtonOffsetX + 21, guiTop + 198));
- }
- this.addButton(new GuiTexturedButton(91, "", guiLeft + playButtonOffsetX + 35, guiTop + 192, 11, 20, animTexture, 18, 71));
- } else {//Pause
- this.addLabel(new GuiNpcLabel(90, "animation.playing", guiLeft + playButtonOffsetX - 15, guiTop + 198));
- this.addLabel(new GuiNpcLabel(94, "", guiLeft + playButtonOffsetX + 20, guiTop + 198));
- this.addButton(new GuiTexturedButton(92, "", guiLeft + playButtonOffsetX + 35, guiTop + 192, 14, 20, animTexture, 0, 71));
- }
- if (this.playingAnimation) {//Stop
- this.addButton(new GuiTexturedButton(93, "", guiLeft + playButtonOffsetX + 55, guiTop + 192, 14, 20, animTexture, 33, 71));
- }
- }
+ String animTexture = "customnpcs:textures/gui/animation.png";
+ int playButtonOffsetX = 140;
+ if (animation != null && !animation.frames.isEmpty()) {
+ if (!this.playingAnimation || data.animation.paused) {//Play
+ this.addLabel(new GuiNpcLabel(90, data.animation.paused ? "animation.paused" : "animation.stopped", guiLeft + playButtonOffsetX - 15, guiTop + 198));
+ if (data.animation.paused) {
+ this.addLabel(new GuiNpcLabel(94, "", guiLeft + playButtonOffsetX + 21, guiTop + 198));
+ }
+ this.addButton(new GuiTexturedButton(91, "", guiLeft + playButtonOffsetX + 35, guiTop + 192, 11, 20, animTexture, 18, 71));
+ } else {//Pause
+ this.addLabel(new GuiNpcLabel(90, "animation.playing", guiLeft + playButtonOffsetX - 15, guiTop + 198));
+ this.addLabel(new GuiNpcLabel(94, "", guiLeft + playButtonOffsetX + 20, guiTop + 198));
+ this.addButton(new GuiTexturedButton(92, "", guiLeft + playButtonOffsetX + 35, guiTop + 192, 14, 20, animTexture, 0, 71));
+ }
+ if (this.playingAnimation) {//Stop
+ this.addButton(new GuiTexturedButton(93, "", guiLeft + playButtonOffsetX + 55, guiTop + 192, 14, 20, animTexture, 33, 71));
+ }
+ }
}
- @Override
- public void drawScreen(int par1, int par2, float par3)
- {
- super.drawScreen(par1,par2,par3);
- AnimationData data = npc.display.animationData;
- if (!data.isActive() && this.playingAnimation) {
- this.playingAnimation = false;
- initGui();
- } else if (data.isActive()) {
- Frame currentFrame = (Frame) data.animation.currentFrame();
- long time = mc.theWorld.getTotalWorldTime();
- if (time != prevTick) {
- if (currentFrame != null && !currentFrame.renderTicks) {
- data.animation.increaseTime();
- }
- GuiNpcLabel label = this.getLabel(94);
- if (label != null) {
- label.label += ".";
- if (label.label.length()%4 == 0) {
- label.label = "";
- }
- }
- }
- prevTick = time;
- }
- }
-
- @Override
- public void keyTyped(char c, int i)
- {
- super.keyTyped(c, i);
- if(getTextField(55) != null){
- if(getTextField(55).isFocused()){
- if(search.equals(getTextField(55).getText()))
- return;
- search = getTextField(55).getText().toLowerCase();
- scrollAnimations.resetScroll();
- scrollAnimations.setList(getSearchList());
- }
- }
- }
-
- private List getSearchList(){
- if(search.isEmpty()){
- return new ArrayList(this.data.keySet());
- }
- List list = new ArrayList();
- for(String name : this.data.keySet()){
- if(name.toLowerCase().contains(search))
- list.add(name);
- }
- return list;
- }
-
@Override
- protected void actionPerformed(GuiButton guibutton){
- GuiNpcButton button = (GuiNpcButton) guibutton;
-
- if(button.id == 0){
- save();
- String name = "New";
- while(data.containsKey(name))
- name += "_";
- Animation animation = new Animation(-1, name);
- Client.sendData(EnumPacketServer.AnimationSave, animation.writeToNBT());
+ public void drawScreen(int par1, int par2, float par3)
+ {
+ super.drawScreen(par1,par2,par3);
+ AnimationData data = npc.display.animationData;
+ if (!data.isActive() && this.playingAnimation) {
+ this.playingAnimation = false;
+ initGui();
+ } else if (data.isActive()) {
+ long time = mc.theWorld.getTotalWorldTime();
+ if (time != prevTick) {
+ GuiNpcLabel label = this.getLabel(94);
+ if (label != null) {
+ label.label += ".";
+ if (label.label.length()%4 == 0) {
+ label.label = "";
+ }
+ }
+ }
+ prevTick = time;
}
- if(button.id == 1){
- if(data.containsKey(scrollAnimations.getSelected())) {
- GuiYesNo guiyesno = new GuiYesNo(this, scrollAnimations.getSelected(), StatCollector.translateToLocal("gui.delete"), 1);
- displayGuiScreen(guiyesno);
- }
- }
-
- AnimationData data = npc.display.animationData;
- if (guibutton.id == 91) {
- if (!this.playingAnimation || !data.isActive()) {
- animation.currentFrame = 0;
- animation.currentFrameTime = 0;
- for (Frame frame : animation.frames) {
- for (FramePart framePart : frame.frameParts.values()) {
- framePart.prevRotations = new float[]{0,0,0};
- framePart.prevPivots = new float[]{0, 0, 0};
- }
- }
- }
- this.playingAnimation = true;
- data.animation = animation;
- data.animation.paused = false;
- } else if (guibutton.id == 92) {
- data.animation.paused = true;
- } else if (guibutton.id == 93) {
- this.playingAnimation = false;
- data.animation.paused = false;
- }
-
- if (guibutton.id == 100) {
- NoppesUtil.openGUI(player, new GuiNPCEditAnimation(this, this.animation, npc));
- }
-
- initGui();
}
- @Override
- public void setGuiData(NBTTagCompound compound) {
- this.animation = new Animation();
- animation.readFromNBT(compound);
- setSelected(animation.name);
- npc.display.animationData.animation = animation;
- this.playingAnimation = false;
- npc.display.animationData.animation.paused = false;
- initGui();
- }
+ @Override
+ public void keyTyped(char c, int i)
+ {
+ super.keyTyped(c, i);
+ if(getTextField(55) != null){
+ if(getTextField(55).isFocused()){
+ if(search.equals(getTextField(55).getText()))
+ return;
+ search = getTextField(55).getText().toLowerCase();
+ scrollAnimations.resetScroll();
+ scrollAnimations.setList(getSearchList());
+ }
+ }
+ }
- @Override
- public void setData(Vector list, HashMap data) {
- String name = scrollAnimations.getSelected();
- this.data = data;
- scrollAnimations.setList(getSearchList());
+ private List getSearchList(){
+ if(search.isEmpty()){
+ return new ArrayList(this.data.keySet());
+ }
+ List list = new ArrayList();
+ for(String name : this.data.keySet()){
+ if(name.toLowerCase().contains(search))
+ list.add(name);
+ }
+ return list;
+ }
- if(name != null)
- scrollAnimations.setSelected(name);
- }
+ @Override
+ protected void actionPerformed(GuiButton guibutton){
+ GuiNpcButton button = (GuiNpcButton) guibutton;
- @Override
- public void setSelected(String selected) {
- this.selected = selected;
- scrollAnimations.setSelected(selected);
- }
+ if(button.id == 0){
+ save();
+ String name = "New";
+ while(data.containsKey(name))
+ name += "_";
+ Animation animation = new Animation(-1, name);
+ Client.sendData(EnumPacketServer.AnimationSave, animation.writeToNBT());
+ }
+ if(button.id == 1){
+ if(data.containsKey(scrollAnimations.getSelected())) {
+ GuiYesNo guiyesno = new GuiYesNo(this, scrollAnimations.getSelected(), StatCollector.translateToLocal("gui.delete"), 1);
+ displayGuiScreen(guiyesno);
+ }
+ }
- @Override
- public void customScrollClicked(int i, int j, int k, GuiCustomScroll guiCustomScroll) {
- if(guiCustomScroll.id == 0)
- {
- selected = scrollAnimations.getSelected();
- Client.sendData(EnumPacketServer.AnimationGet, data.get(selected));
- }
- }
+ AnimationData data = npc.display.animationData;
+ if (guibutton.id == 91) {
+ if (!this.playingAnimation || !data.isActive()) {
+ animation.currentFrame = 0;
+ animation.currentFrameTime = 0;
+ for (Frame frame : animation.frames) {
+ for (FramePart framePart : frame.frameParts.values()) {
+ framePart.prevRotations = new float[]{0,0,0};
+ framePart.prevPivots = new float[]{0, 0, 0};
+ }
+ }
+ }
+ this.playingAnimation = true;
+ data.setAnimation(this.animation);
+ data.animation.paused = false;
+ } else if (guibutton.id == 92) {
+ data.animation.paused = true;
+ } else if (guibutton.id == 93) {
+ this.playingAnimation = false;
+ data.animation.paused = false;
+ }
- public void save() {
- if(selected != null && data.containsKey(selected) && animation != null){
- Client.sendData(EnumPacketServer.AnimationSave, animation.writeToNBT());
- }
- }
+ if (guibutton.id == 100) {
+ NoppesUtil.openGUI(player, new GuiNPCEditAnimation(this, this.animation, npc));
+ }
- @Override
- public void unFocused(GuiNpcTextField guiNpcTextField) {
- if(animation.id == -1)
- return;
+ initGui();
+ }
- if(guiNpcTextField.id == 0) {
- String name = guiNpcTextField.getText();
- if(!name.isEmpty() && !data.containsKey(name)){
- String old = animation.name;
- data.remove(animation.name);
- animation.name = name;
- data.put(animation.name, animation.id);
- selected = name;
- scrollAnimations.replace(old, animation.name);
- }
- }
- }
+ @Override
+ public void setGuiData(NBTTagCompound compound) {
+ this.animation = new Animation();
+ animation.readFromNBT(compound);
+ setSelected(animation.name);
+ npc.display.animationData.setAnimation(this.animation);
+ this.playingAnimation = false;
+ npc.display.animationData.animation.paused = false;
+ initGui();
+ }
- @Override
- public void subGuiClosed(SubGuiInterface subgui) {}
+ @Override
+ public void setData(Vector list, HashMap data) {
+ String name = scrollAnimations.getSelected();
+ this.data = data;
+ scrollAnimations.setList(getSearchList());
+
+ if(name != null)
+ scrollAnimations.setSelected(name);
+ }
+
+ @Override
+ public void setSelected(String selected) {
+ this.selected = selected;
+ scrollAnimations.setSelected(selected);
+ }
+
+ @Override
+ public void customScrollClicked(int i, int j, int k, GuiCustomScroll guiCustomScroll) {
+ if(guiCustomScroll.id == 0)
+ {
+ selected = scrollAnimations.getSelected();
+ Client.sendData(EnumPacketServer.AnimationGet, data.get(selected));
+ }
+ }
+
+ public void save() {
+ if(selected != null && data.containsKey(selected) && animation != null){
+ Client.sendData(EnumPacketServer.AnimationSave, animation.writeToNBT());
+ }
+ }
+
+ @Override
+ public void unFocused(GuiNpcTextField guiNpcTextField) {
+ if(animation.id == -1)
+ return;
+
+ if(guiNpcTextField.id == 0) {
+ String name = guiNpcTextField.getText();
+ if(!name.isEmpty() && !data.containsKey(name)){
+ String old = animation.name;
+ data.remove(animation.name);
+ animation.name = name;
+ data.put(animation.name, animation.id);
+ selected = name;
+ scrollAnimations.replace(old, animation.name);
+ }
+ }
+ }
+
+ @Override
+ public void subGuiClosed(SubGuiInterface subgui) {}
@Override
public void confirmClicked(boolean result, int id) {
diff --git a/src/main/java/noppes/npcs/client/gui/script/GuiScriptPlayers.java b/src/main/java/noppes/npcs/client/gui/script/GuiScriptPlayers.java
index 3f2774fe3..3ea6f6dee 100644
--- a/src/main/java/noppes/npcs/client/gui/script/GuiScriptPlayers.java
+++ b/src/main/java/noppes/npcs/client/gui/script/GuiScriptPlayers.java
@@ -73,6 +73,10 @@ public class GuiScriptPlayers extends GuiScriptInterface {
hookList.add("partyKick");
hookList.add("partyLeave");
hookList.add("partyDisband");
+ hookList.add("animationStart");
+ hookList.add("animationEnd");
+ hookList.add("frameEnter");
+ hookList.add("frameExit");
this.handler = this.script;
Client.sendData(EnumPacketServer.ScriptPlayerGet);
diff --git a/src/main/java/noppes/npcs/controllers/data/Animation.java b/src/main/java/noppes/npcs/controllers/data/Animation.java
index 569ff7614..c8eeaace9 100644
--- a/src/main/java/noppes/npcs/controllers/data/Animation.java
+++ b/src/main/java/noppes/npcs/controllers/data/Animation.java
@@ -4,7 +4,9 @@ import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.nbt.NBTTagList;
+import noppes.npcs.EventHooks;
import noppes.npcs.api.handler.data.IAnimation;
+import noppes.npcs.api.handler.data.IAnimationData;
import noppes.npcs.api.handler.data.IFrame;
import noppes.npcs.constants.EnumAnimationPart;
import noppes.npcs.controllers.AnimationController;
@@ -13,262 +15,300 @@ import java.util.ArrayList;
public class Animation implements IAnimation {
- public AnimationData parent; //Client-sided only
- public int id = -1; // Only for internal usage
+ public AnimationData parent; //Client-sided only
+ public int id = -1; // Only for internal usage
- public ArrayList frames = new ArrayList<>();
- public int currentFrame = 0;
- public int currentFrameTime = 0;
+ public ArrayList frames = new ArrayList<>();
+ public int currentFrame = 0;
+ public int currentFrameTime = 0;
- public String name = "";
- public float speed = 1.0F;
- public byte smooth = 0;
- public int loop = -1; //If greater than 0 and less than the amount of frames, the animation will begin looping when it reaches this frame.
- public boolean renderTicks = false; // If true, MC ticks are used. If false, render ticks are used.
+ public String name = "";
+ public float speed = 1.0F;
+ public byte smooth = 0;
+ public int loop = -1; //If greater than 0 and less than the amount of frames, the animation will begin looping when it reaches this frame.
+ public int tickDuration = 50;
- public boolean whileStanding = true;
- public boolean whileAttacking = true;
- public boolean whileMoving = true;
+ public boolean whileStanding = true;
+ public boolean whileAttacking = true;
+ public boolean whileMoving = true;
- //Client-sided
- public boolean paused;
+ //Client-sided
+ public boolean paused;
- public Animation(){}
+ public Animation(){}
- public Animation(int id, String name){
- this.name = name;
- this.id = id;
- }
+ public Animation(int id, String name){
+ this.name = name;
+ this.id = id;
+ }
- public Animation(int id, String name, float speed, byte smooth){
- this.name = name;
- this.speed = speed;
- this.smooth = smooth;
+ public Animation(int id, String name, float speed, byte smooth){
+ this.name = name;
+ this.speed = speed;
+ this.smooth = smooth;
- this.id = id;
- }
+ this.id = id;
+ }
- public IFrame currentFrame() {
- return currentFrame < frames.size() ? frames.get(currentFrame) : null;
- }
+ public IAnimationData getParent() {
+ return this.parent;
+ }
- public IFrame[] getFrames() {
- return frames.toArray(new Frame[0]);
- }
+ public IFrame currentFrame() {
+ return currentFrame < frames.size() ? frames.get(currentFrame) : null;
+ }
- public IAnimation setFrames(IFrame[] frames) {
- this.clearFrames();
- for (IFrame frame : frames) {
- this.frames.add((Frame) frame);
- }
- return this;
- }
+ public IFrame[] getFrames() {
+ return frames.toArray(new Frame[0]);
+ }
- public IAnimation clearFrames() {
- this.frames.clear();
- return this;
- }
+ public IAnimation setFrames(IFrame[] frames) {
+ this.clearFrames();
+ for (IFrame frame : frames) {
+ this.frames.add((Frame) frame);
+ }
+ return this;
+ }
- public IAnimation addFrame(IFrame frame) {
- this.frames.add((Frame) frame);
- return this;
- }
+ public IAnimation clearFrames() {
+ this.frames.clear();
+ return this;
+ }
- public IAnimation addFrame(int index, IFrame frame) {
- this.frames.add(index, (Frame) frame);
- return this;
- }
+ public IAnimation addFrame(IFrame frame) {
+ this.frames.add((Frame) frame);
+ return this;
+ }
- public IAnimation removeFrame(IFrame frame) {
- this.frames.remove((Frame) frame);
- return this;
- }
+ public IAnimation addFrame(int index, IFrame frame) {
+ this.frames.add(index, (Frame) frame);
+ return this;
+ }
- public IAnimation setName(String name) {
- this.name = name;
- return this;
- }
+ public IAnimation removeFrame(IFrame frame) {
+ this.frames.remove((Frame) frame);
+ return this;
+ }
- public String getName() {
- return this.name;
- }
+ public IAnimation setName(String name) {
+ this.name = name;
+ return this;
+ }
- public IAnimation setSpeed(float speed) {
- this.speed = speed;
- return this;
- }
+ public String getName() {
+ return this.name;
+ }
- public float getSpeed() {
- return this.speed;
- }
+ public int tickDuration() {
+ return this.tickDuration;
+ }
- public IAnimation setSmooth(byte smooth) {
- this.smooth = smooth;
- return this;
- }
+ public IAnimation setTickDuration(int tickDuration) {
+ this.tickDuration = tickDuration;
+ return this;
+ }
- public byte isSmooth() {
- return this.smooth;
- }
+ public IAnimation setSpeed(float speed) {
+ this.speed = speed;
+ return this;
+ }
- public IAnimation useRenderTicks(boolean renderTicks) {
- this.renderTicks = renderTicks;
- return this;
- }
+ public float getSpeed() {
+ return this.speed;
+ }
- public boolean useRenderTicks() {
- return this.renderTicks;
- }
+ public IAnimation setSmooth(byte smooth) {
+ this.smooth = smooth;
+ return this;
+ }
- public IAnimation doWhileStanding(boolean whileStanding) {
- this.whileStanding = whileStanding;
- return this;
- }
+ public byte isSmooth() {
+ return this.smooth;
+ }
- public boolean doWhileStanding() {
- return this.whileStanding;
- }
+ public IAnimation doWhileStanding(boolean whileStanding) {
+ this.whileStanding = whileStanding;
+ return this;
+ }
- public IAnimation doWhileMoving(boolean whileMoving) {
- this.whileMoving = whileMoving;
- return this;
- }
+ public boolean doWhileStanding() {
+ return this.whileStanding;
+ }
- public boolean doWhileMoving() {
- return this.whileMoving;
- }
+ public IAnimation doWhileMoving(boolean whileMoving) {
+ this.whileMoving = whileMoving;
+ return this;
+ }
- public IAnimation doWhileAttacking(boolean whileAttacking) {
- this.whileAttacking = whileAttacking;
- return this;
- }
+ public boolean doWhileMoving() {
+ return this.whileMoving;
+ }
- public boolean doWhileAttacking() {
- return this.whileAttacking;
- }
+ public IAnimation doWhileAttacking(boolean whileAttacking) {
+ this.whileAttacking = whileAttacking;
+ return this;
+ }
- public IAnimation setLoop(int loopAtFrame) {
- this.loop = loopAtFrame;
- return this;
- }
+ public boolean doWhileAttacking() {
+ return this.whileAttacking;
+ }
- public int loop() {
- return this.loop;
- }
+ public IAnimation setLoop(int loopAtFrame) {
+ this.loop = loopAtFrame;
+ return this;
+ }
- public IAnimation save() {
- return AnimationController.Instance.saveAnimation(this);
- }
+ public int loop() {
+ return this.loop;
+ }
- @Override
- public int getID() {
- return id;
- }
+ public IAnimation save() {
+ return AnimationController.Instance.saveAnimation(this);
+ }
- @Override
- public void setID(int newID) {
- id = newID;
- }
+ @Override
+ public int getID() {
+ return id;
+ }
- public void readFromNBT(NBTTagCompound compound){
- if(compound.hasKey("ID")){
- id = compound.getInteger("ID");
- }
- else if (AnimationController.Instance != null) {
- id = AnimationController.Instance.getUnusedId();
- }
+ @Override
+ public void setID(int newID) {
+ id = newID;
+ }
- name = compound.getString("Name");
- speed = compound.getFloat("Speed");
- smooth = compound.getByte("Smooth");
- loop = compound.getInteger("Loop");
+ public long getTotalTime() {
+ long time = 0;
+ for (Frame frame : this.frames) {
+ time += (long) frame.duration * (frame.customized ? frame.tickDuration : this.tickDuration);
+ }
+ return time;
+ }
- renderTicks = compound.getBoolean("RenderTicks");
+ public void readFromNBT(NBTTagCompound compound){
+ if(compound.hasKey("ID")){
+ id = compound.getInteger("ID");
+ }
+ else if (AnimationController.Instance != null) {
+ id = AnimationController.Instance.getUnusedId();
+ }
- ArrayList frames = new ArrayList();
- NBTTagList list = compound.getTagList("Frames", 10);
- for (int i = 0; i < list.tagCount(); i++) {
- NBTTagCompound item = list.getCompoundTagAt(i);
- Frame frame = new Frame();
- frame.parent = this;
- frame.readFromNBT(item);
- frames.add(frame);
- }
- this.frames = frames;
+ name = compound.getString("Name");
+ speed = compound.getFloat("Speed");
+ smooth = compound.getByte("Smooth");
+ loop = compound.getInteger("Loop");
- this.whileStanding = compound.getBoolean("WhileStanding");
- this.whileMoving = compound.getBoolean("WhileWalking");
- this.whileAttacking = compound.getBoolean("WhileAttacking");
- }
+ if (compound.hasKey("TickDuration")) {
+ this.tickDuration = compound.getInteger("TickDuration");
+ } else if(compound.hasKey("RenderTicks")){
+ this.tickDuration = compound.getBoolean("RenderTicks") ? 20 : 50;
+ }
- public NBTTagCompound writeToNBT(){
- NBTTagCompound compound = new NBTTagCompound();
- compound.setInteger("ID", id);
- compound.setString("Name", name);
- compound.setFloat("Speed", speed);
- compound.setByte("Smooth", smooth);
- compound.setInteger("Loop",loop);
+ ArrayList frames = new ArrayList();
+ NBTTagList list = compound.getTagList("Frames", 10);
+ for (int i = 0; i < list.tagCount(); i++) {
+ NBTTagCompound item = list.getCompoundTagAt(i);
+ Frame frame = new Frame();
+ frame.parent = this;
+ frame.readFromNBT(item);
+ frames.add(frame);
+ }
+ this.frames = frames;
- compound.setBoolean("RenderTicks", renderTicks);
+ this.whileStanding = compound.getBoolean("WhileStanding");
+ this.whileMoving = compound.getBoolean("WhileWalking");
+ this.whileAttacking = compound.getBoolean("WhileAttacking");
- NBTTagList list = new NBTTagList();
- for(Frame frame : frames){
- NBTTagCompound item = frame.writeToNBT();
- list.appendTag(item);
- }
- compound.setTag("Frames", list);
+ this.currentFrame = compound.getInteger("CurrentFrame");
+ this.currentFrameTime = compound.getInteger("CurrentFrameTime");
+ }
- compound.setBoolean("WhileStanding", whileStanding);
- compound.setBoolean("WhileWalking", whileMoving);
- compound.setBoolean("WhileAttacking", whileAttacking);
- return compound;
- }
+ public NBTTagCompound writeToNBT(){
+ NBTTagCompound compound = new NBTTagCompound();
+ compound.setInteger("ID", id);
+ compound.setString("Name", name);
+ compound.setFloat("Speed", speed);
+ compound.setByte("Smooth", smooth);
+ compound.setInteger("Loop",loop);
+ compound.setInteger("TickDuration", tickDuration);
- @SideOnly(Side.CLIENT)
- public void increaseTime() {
- if (paused)
- return;
+ NBTTagList list = new NBTTagList();
+ for(Frame frame : frames){
+ NBTTagCompound item = frame.writeToNBT();
+ list.appendTag(item);
+ }
+ compound.setTag("Frames", list);
- if (this.parent != null && this.currentFrame < this.frames.size()) {
- this.parent.finishedFrame = this.currentFrame;
- }
+ compound.setBoolean("WhileStanding", whileStanding);
+ compound.setBoolean("WhileWalking", whileMoving);
+ compound.setBoolean("WhileAttacking", whileAttacking);
- this.currentFrameTime++;
- if (this.currentFrameTime == this.currentFrame().getDuration()) {
- Frame prevFrame = (Frame) this.currentFrame();
- Frame nextFrame = null;
- this.currentFrameTime = 0;
- this.currentFrame++;
- if (this.currentFrame < this.frames.size()) {
- nextFrame = this.frames.get(this.currentFrame);
- } else if (this.loop >= 0 && this.loop < this.frames.size()) {
- this.currentFrame = this.loop;
- }
- if (nextFrame != null) {
- for (EnumAnimationPart part : EnumAnimationPart.values()) {
- if (prevFrame.frameParts.containsKey(part) && nextFrame.frameParts.containsKey(part)) {
- nextFrame.frameParts.get(part).prevRotations = prevFrame.frameParts.get(part).prevRotations;
- nextFrame.frameParts.get(part).prevPivots = prevFrame.frameParts.get(part).prevPivots;
- }
- }
- } else if (this.parent != null && this.currentFrame > this.loop) {
- this.parent.finishedTime = this.parent.animationEntity.getAge();
- }
- }
- }
+ compound.setInteger("CurrentFrame", currentFrame);
+ compound.setInteger("CurrentFrameTime", currentFrameTime);
+ return compound;
+ }
- @SideOnly(Side.CLIENT)
- public void jumpToCurrentFrame() {
- this.currentFrameTime = 0;
- Frame frame = (Frame) this.currentFrame();
- if(frame != null){
- for (EnumAnimationPart part : EnumAnimationPart.values()) {
- if(part != null){
- if (frame.frameParts.containsKey(part)) {
- frame.frameParts.get(part).jumpToCurrentFrame();
- }
- }
- }
- }
- }
+ public boolean increaseTime() {
+ if (paused)
+ return false;
+
+ if (this.parent != null && this.currentFrame < this.frames.size()) {
+ this.parent.finishedFrame = this.currentFrame;
+ }
+
+ this.currentFrameTime++;
+ if (this.currentFrame() != null && this.currentFrameTime == this.currentFrame().getDuration()) {
+ EventHooks.onAnimationFrameExited(this, this.currentFrame());
+
+ Frame prevFrame = (Frame) this.currentFrame();
+ Frame nextFrame = null;
+ this.currentFrameTime = 0;
+ this.currentFrame++;
+ if (this.currentFrame < this.frames.size()) {
+ nextFrame = this.frames.get(this.currentFrame);
+ } else if (this.loop >= 0 && this.loop < this.frames.size()) {
+ this.currentFrame = this.loop;
+ }
+
+ if (this.currentFrame() != null) {
+ EventHooks.onAnimationFrameEntered(this, this.currentFrame());
+ } else {
+ EventHooks.onAnimationEnded(this);
+ }
+
+ if (nextFrame != null) {
+ for (EnumAnimationPart part : EnumAnimationPart.values()) {
+ if (prevFrame.frameParts.containsKey(part) && nextFrame.frameParts.containsKey(part)) {
+ nextFrame.frameParts.get(part).prevRotations = prevFrame.frameParts.get(part).prevRotations;
+ nextFrame.frameParts.get(part).prevPivots = prevFrame.frameParts.get(part).prevPivots;
+ }
+ }
+ } else if (this.parent != null && this.currentFrame > this.loop) {
+ this.parent.finishedTime = this.parent.getMCEntity().getAge();
+ }
+ }
+
+ return true;
+ }
+
+ @SideOnly(Side.CLIENT)
+ public void jumpToCurrentFrame() {
+ this.jumpToFrameAtTime(this.currentFrame, 0);
+ }
+
+ @SideOnly(Side.CLIENT)
+ public void jumpToFrameAtTime(int frameIndex, int time) {
+ this.currentFrame = frameIndex;
+ this.currentFrameTime = time;
+
+ Frame frame = (Frame) this.currentFrame();
+ if(frame != null){
+ for (EnumAnimationPart part : EnumAnimationPart.values()) {
+ if(part != null){
+ if (frame.frameParts.containsKey(part)) {
+ frame.frameParts.get(part).jumpToCurrentFrame();
+ }
+ }
+ }
+ }
+ }
}
diff --git a/src/main/java/noppes/npcs/controllers/data/AnimationData.java b/src/main/java/noppes/npcs/controllers/data/AnimationData.java
index 4c47c9e5e..8ddf852ce 100644
--- a/src/main/java/noppes/npcs/controllers/data/AnimationData.java
+++ b/src/main/java/noppes/npcs/controllers/data/AnimationData.java
@@ -3,19 +3,25 @@ package noppes.npcs.controllers.data;
import cpw.mods.fml.common.FMLCommonHandler;
import cpw.mods.fml.relauncher.Side;
+import net.minecraft.entity.Entity;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.util.AxisAlignedBB;
+import noppes.npcs.CommonProxy;
import noppes.npcs.DataDisplay;
+import noppes.npcs.EventHooks;
import noppes.npcs.Server;
+import noppes.npcs.api.entity.IAnimatable;
+import noppes.npcs.api.entity.IEntity;
import noppes.npcs.api.handler.data.IAnimation;
import noppes.npcs.api.handler.data.IAnimationData;
import noppes.npcs.constants.EnumAnimationPart;
import noppes.npcs.constants.EnumPacketClient;
import noppes.npcs.controllers.PlayerDataController;
import noppes.npcs.entity.EntityNPCInterface;
+import noppes.npcs.scripted.NpcAPI;
import java.util.Arrays;
import java.util.HashSet;
@@ -29,20 +35,47 @@ public class AnimationData implements IAnimationData {
public Animation animation;
public boolean allowAnimation = false;
+ public long animatingTime = 0;
+
+ public Animation currentClientAnimation;
+ private boolean isClientAnimating;
private final HashSet cachedAnimationIDs = new HashSet<>();
//Client-side values
- public EntityLivingBase animationEntity;
public int finishedTime = -1;
public int finishedFrame = -1;
public AnimationData(Object parent){
this.parent = parent;
- if (parent instanceof DataDisplay) {
- this.animationEntity = ((DataDisplay) parent).npc;
- } else if (parent instanceof EntityPlayer) {
- this.animationEntity = (EntityLivingBase) parent;
+ }
+ public static AnimationData getData(Entity entity) {
+ if (entity instanceof EntityPlayerMP) {
+ return PlayerData.get((EntityPlayer) entity).animationData;
+ } else if (entity instanceof EntityNPCInterface) {
+ return ((EntityNPCInterface)entity).display.animationData;
+ } else {
+ return null;
+ }
+ }
+
+ public IAnimatable getEntity() {
+ IEntity> entity = NpcAPI.Instance().getIEntity(this.getMCEntity());
+ if (entity instanceof IAnimatable) {
+ return (IAnimatable) entity;
+ }
+ return null;
+ }
+
+ public EntityLivingBase getMCEntity() {
+ if (this.parent instanceof DataDisplay) {
+ return ((DataDisplay) this.parent).npc;
+ } else {
+ if (this.parent instanceof PlayerData) {
+ return ((PlayerData) this.parent).player;
+ } else {
+ return (EntityPlayer) this.parent;
+ }
}
}
@@ -57,6 +90,30 @@ public class AnimationData implements IAnimationData {
if(sendingEntity.dimension != sendingEntity.worldObj.provider.dimensionId)
sendingEntity.dimension = sendingEntity.worldObj.provider.dimensionId;
+ this.animatingTime = 0;
+
+ boolean prevIsClientAnimating = this.isClientAnimating && this.currentClientAnimation.currentFrame() != null;
+ this.isClientAnimating = this.allowAnimation && this.animation != null;
+ if (prevIsClientAnimating && (!this.isClientAnimating || this.animation != this.currentClientAnimation)) {
+ EventHooks.onAnimationEnded(this.currentClientAnimation);
+ }
+ if (this.isClientAnimating) {
+ this.currentClientAnimation = this.animation;
+ }
+
+ if (this.animation != null && this.allowAnimation) {
+ if (EventHooks.onAnimationStarted(this.animation))
+ return;
+ EventHooks.onAnimationFrameEntered(this.animation, this.animation.currentFrame());
+ }
+
+ synchronized (CommonProxy.serverPlayingAnimations) {
+ if (this.isClientAnimating && this.getMCEntity() != null &&
+ !this.getMCEntity().worldObj.isRemote && this.animation != null) {
+ CommonProxy.serverPlayingAnimations.add(this);
+ }
+ }
+
List entities = sendingEntity.worldObj.getEntitiesWithinAABB(EntityPlayer.class, AxisAlignedBB.getBoundingBox(
sendingEntity.posX - range, sendingEntity.posY - range, sendingEntity.posZ - range,
sendingEntity.posX + range, sendingEntity.posY + range, sendingEntity.posZ + range));
@@ -69,13 +126,21 @@ public class AnimationData implements IAnimationData {
if (animationNBT == null && this.animation != null && !animationData.isCached(this.animation.getID())) {
animationNBT = this.animation.writeToNBT();
}
- animationData.viewAnimation(this.animation, sendingEntity, this, animationNBT);
+ animationData.viewAnimation(this.animation, this, animationNBT);
}
}
}
+ public boolean isClientAnimating() {
+ return this.isClientAnimating;
+ }
+
public boolean isActive() {
- if (!this.allowAnimation || this.animation == null || this.animation.currentFrame == this.animation.frames.size() || animation.currentFrame() == null)
+ return this.isActive(this.animation);
+ }
+
+ public boolean isActive(Animation animation) {
+ if (!this.allowAnimation || animation == null || animation.currentFrame == animation.frames.size() || animation.currentFrame() == null)
return false;
if (this.parent instanceof DataDisplay) {
@@ -100,6 +165,25 @@ public class AnimationData implements IAnimationData {
}
}
+ public void increaseTime() {
+ Animation updateAnimation = null;
+ if (this.isActive(animation.parent.currentClientAnimation)) {
+ updateAnimation = this.currentClientAnimation;
+ } else {
+ this.isClientAnimating = false;
+ if (this.isActive()) {
+ updateAnimation = this.animation;
+ }
+ }
+
+ if (updateAnimation != null && updateAnimation.increaseTime()) {
+ Frame frame = (Frame) updateAnimation.currentFrame();
+ if (frame != null) {
+ this.animatingTime += frame.customized ? frame.tickDuration : updateAnimation.tickDuration;
+ }
+ }
+ }
+
public boolean isCached(int id) {
return this.cachedAnimationIDs.contains(id);
}
@@ -116,27 +200,77 @@ public class AnimationData implements IAnimationData {
this.cachedAnimationIDs.clear();
}
- public void viewAnimation(Animation animation, EntityLivingBase entity, AnimationData animationData, NBTTagCompound animationNBT) {
- NBTTagCompound data = animationData.writeToNBT(new NBTTagCompound());
+ public void viewAnimation(Animation animation, AnimationData animationData, NBTTagCompound animationNBT) {
+ this.viewAnimation(animation, animationData, animationNBT, animationData.allowAnimation, -1, -1);
+ }
+
+ public boolean viewAnimation(Animation animation, AnimationData animationData, NBTTagCompound animationNBT, boolean enabled, int currentFrame, int time) {
+ if (animation != null
+ && (currentFrame >= animation.frames.size()
+ || currentFrame >= 0 && animation.frames.get(currentFrame).getDuration() < time)) {
+ return false;
+ }
+
+ boolean prevEnabled = animationData.allowAnimation;
+ animationData.allowAnimation = enabled;
+ NBTTagCompound data = animationData.viewWriteNBT(new NBTTagCompound());
+ animationData.allowAnimation = prevEnabled;
+
+ if (animation != null && currentFrame >= 0 && currentFrame < animation.frames.size()) {
+ data.setInteger("Frame", currentFrame);
+ data.setInteger("Time", time);
+ }
+
if (animation != null) {
- if (this.cachedAnimationIDs.contains(animation.getID())) {
+ if (this.cachedAnimationIDs.contains(animation.getID()) && !data.hasKey("Frame")) {
data.setInteger("AnimationID", animation.getID());
} else {
data.setTag("Animation", animationNBT);
}
}
+
+ IAnimatable animatable = animationData.getEntity();
+ Entity entity = ((IEntity>) animatable).getMCEntity();
if (!(entity instanceof EntityPlayer)) {
data.setInteger("EntityId", entity.getEntityId());
}
+
Server.sendData((EntityPlayerMP) ((PlayerData) parent).player, EnumPacketClient.UPDATE_ANIMATIONS, data, entity.getCommandSenderName());
+ return true;
+ }
+
+ public NBTTagCompound viewWriteNBT(NBTTagCompound compound) {
+ compound.setBoolean("AllowAnimation", allowAnimation);
+ return compound;
+ }
+
+ public void viewReadFromNBT(NBTTagCompound compound) {
+ this.setEnabled(compound.getBoolean("AllowAnimation"));
}
public NBTTagCompound writeToNBT(NBTTagCompound compound) {
+ if (this.currentClientAnimation != null) {
+ compound.setBoolean("IsClientAnimating", isClientAnimating);
+ if (this.isClientAnimating) {
+ compound.setTag("CurrentAnimation", currentClientAnimation.writeToNBT());
+ }
+ }
compound.setBoolean("AllowAnimation", allowAnimation);
return compound;
}
public void readFromNBT(NBTTagCompound compound) {
+ Entity entity = this.getMCEntity();
+ boolean isServer = entity != null && !entity.worldObj.isRemote;
+ if (compound.hasKey("IsClientAnimating") && isServer) {
+ this.isClientAnimating = compound.getBoolean("IsClientAnimating");
+ if (this.isClientAnimating) {
+ this.currentClientAnimation = new Animation();
+ this.currentClientAnimation.parent = this;
+ this.currentClientAnimation.readFromNBT(compound.getCompoundTag("CurrentAnimation"));
+ this.animation = this.currentClientAnimation;
+ }
+ }
this.setEnabled(compound.getBoolean("AllowAnimation"));
}
@@ -154,32 +288,41 @@ public class AnimationData implements IAnimationData {
}
public void setAnimation(IAnimation animation) {
- if (FMLCommonHandler.instance().getEffectiveSide() == Side.SERVER) {
- this.animation = animation != null ? (Animation) animation : null;
- } else {
- if (animation != null) {
- Animation newAnim = new Animation();
- newAnim.readFromNBT(((Animation) animation).writeToNBT());
- if (this.isActive() && !newAnim.frames.isEmpty()) {
- Frame frame = (Frame) this.animation.currentFrame();
- if (frame != null) {
- Frame firstFrame = newAnim.frames.get(0);
- for (Map.Entry entry : frame.frameParts.entrySet()) {
- if (firstFrame.frameParts.containsKey(entry.getKey())) {
- FramePart prevFramePart = entry.getValue();
- FramePart newFramePart = firstFrame.frameParts.get(entry.getKey());
- for (int i = 0; i < 3; i++) {
- newFramePart.prevPivots[i] = prevFramePart.prevPivots[i];
- newFramePart.prevRotations[i] = prevFramePart.prevRotations[i];
- }
- }
+ Animation newAnim = null;
+ if (animation != null) {
+ newAnim = new Animation();
+ newAnim.readFromNBT(((Animation) animation).writeToNBT());
+ newAnim.currentFrame = 0;
+ newAnim.currentFrameTime = 0;
+ newAnim.parent = this;
+ }
+
+
+ if (this.getMCEntity() != null && this.getMCEntity().worldObj.isRemote && newAnim != null) {
+ this.animatingTime = 0;
+ synchronized (CommonProxy.clientPlayingAnimations) {
+ CommonProxy.clientPlayingAnimations.add(this);
+ }
+ }
+
+ Animation prevAnim = this.animation;
+ this.animation = newAnim;
+
+ if (this.getMCEntity() != null && this.getMCEntity().worldObj.isRemote &&
+ this.isActive() && prevAnim != null && newAnim != null && !newAnim.frames.isEmpty()) {
+ Frame frame = (Frame) prevAnim.currentFrame();
+ if (frame != null) {
+ Frame firstFrame = newAnim.frames.get(0);
+ for (Map.Entry entry : frame.frameParts.entrySet()) {
+ if (firstFrame.frameParts.containsKey(entry.getKey())) {
+ FramePart prevFramePart = entry.getValue();
+ FramePart newFramePart = firstFrame.frameParts.get(entry.getKey());
+ for (int i = 0; i < 3; i++) {
+ newFramePart.prevPivots[i] = prevFramePart.prevPivots[i];
+ newFramePart.prevRotations[i] = prevFramePart.prevRotations[i];
}
}
}
- this.animation = newAnim;
- newAnim.parent = this;
- } else {
- this.animation = null;
}
}
}
@@ -187,4 +330,8 @@ public class AnimationData implements IAnimationData {
public IAnimation getAnimation() {
return animation;
}
+
+ public long getAnimatingTime() {
+ return this.animatingTime;
+ }
}
diff --git a/src/main/java/noppes/npcs/controllers/data/Frame.java b/src/main/java/noppes/npcs/controllers/data/Frame.java
index df80096bd..770ba924c 100644
--- a/src/main/java/noppes/npcs/controllers/data/Frame.java
+++ b/src/main/java/noppes/npcs/controllers/data/Frame.java
@@ -11,188 +11,206 @@ import java.util.Map;
public class Frame implements IFrame {
- public Animation parent;
- public HashMap frameParts = new HashMap<>();
- public int duration = 0;
- boolean customized = false;
- public float speed = 1.0F;
- public byte smooth = 0;
- public boolean renderTicks = false; // If true, MC ticks are used. If false, render ticks are used.
+ public Animation parent;
+ public HashMap frameParts = new HashMap<>();
+ public int duration = 0;
+ public int tickDuration = 50;
- private int colorMarker = 0xFFFFFF;
+ boolean customized = false;
+ public float speed = 1.0F;
+ public byte smooth = 0;
- public Frame(){}
+ private int colorMarker = 0xFFFFFF;
+ private String comment = "";
- public Frame(int duration) {
- this.duration = duration;
- }
+ public Frame(){}
- public Frame(int duration, float speed, byte smooth) {
- this.duration = duration;
- this.speed = speed;
- this.smooth = smooth;
- this.customized = true;
- }
+ public Frame(int duration) {
+ this.duration = duration;
+ }
- public HashMap getFrameMap() {
- return frameParts;
- }
+ public Frame(int duration, float speed, byte smooth) {
+ this.duration = duration;
+ this.speed = speed;
+ this.smooth = smooth;
+ this.customized = true;
+ }
- public IFramePart[] getParts() {
- return frameParts.values().toArray(new IFramePart[0]);
- }
+ public HashMap getFrameMap() {
+ return frameParts;
+ }
- public IFrame addPart(IFramePart partConfig) {
- this.frameParts.put(((FramePart)partConfig).getPart(),(FramePart) partConfig);
- return this;
- }
+ public IFramePart[] getParts() {
+ return frameParts.values().toArray(new IFramePart[0]);
+ }
- public IFrame removePart(String partName) {
- try {
- this.frameParts.remove(EnumAnimationPart.valueOf(partName));
- } catch (IllegalArgumentException ignored) {}
- return this;
- }
+ public IFrame addPart(IFramePart partConfig) {
+ this.frameParts.put(((FramePart)partConfig).getPart(),(FramePart) partConfig);
+ return this;
+ }
- public IFrame removePart(int partId) {
- for (EnumAnimationPart part : EnumAnimationPart.values()) {
- this.frameParts.remove(part);
- }
- return this;
- }
+ public IFrame removePart(String partName) {
+ try {
+ this.frameParts.remove(EnumAnimationPart.valueOf(partName));
+ } catch (IllegalArgumentException ignored) {}
+ return this;
+ }
- public IFrame clearParts() {
- frameParts.clear();
- return this;
- }
+ public IFrame removePart(int partId) {
+ for (EnumAnimationPart part : EnumAnimationPart.values()) {
+ this.frameParts.remove(part);
+ }
+ return this;
+ }
- public int getDuration() {
- return duration;
- }
+ public IFrame clearParts() {
+ frameParts.clear();
+ return this;
+ }
- public IFrame setDuration(int duration) {
- this.duration = duration;
- return this;
- }
+ public int getDuration() {
+ return duration;
+ }
- public boolean isCustomized() {
- return customized;
- }
+ public IFrame setDuration(int duration) {
+ this.duration = duration;
+ return this;
+ }
- public IFrame setCustomized(boolean customized) {
- this.customized = customized;
- return this;
- }
+ public int tickDuration() {
+ return !this.customized && this.parent != null ? this.parent.tickDuration : this.tickDuration;
+ }
- public float getSpeed() {
- return speed;
- }
+ public IFrame setTickDuration(int tickDuration) {
+ this.tickDuration = tickDuration;
+ return this;
+ }
- public IFrame setSpeed(float speed) {
- this.speed = speed;
- return this;
- }
+ public boolean isCustomized() {
+ return customized;
+ }
- public byte smoothType() {
- return smooth;
- }
+ public IFrame setCustomized(boolean customized) {
+ this.customized = customized;
+ return this;
+ }
- public IFrame setSmooth(byte smooth) {
- this.smooth = smooth;
- return this;
- }
+ public float getSpeed() {
+ return speed;
+ }
- public IFrame useRenderTicks(boolean renderTicks) {
- this.renderTicks = renderTicks;
- return this;
- }
+ public IFrame setSpeed(float speed) {
+ this.speed = speed;
+ return this;
+ }
- public boolean useRenderTicks() {
- return this.renderTicks;
- }
+ public byte smoothType() {
+ return smooth;
+ }
- public int getColorMarker() {
- return this.colorMarker;
- }
+ public IFrame setSmooth(byte smooth) {
+ this.smooth = smooth;
+ return this;
+ }
- public void setColorMarker(int color) {
- this.colorMarker = color;
- }
+ public int getColorMarker() {
+ return this.colorMarker;
+ }
- public void readFromNBT(NBTTagCompound compound){
- duration = compound.getInteger("Duration");
- if (compound.hasKey("ColorMarker")) {
- this.setColorMarker(compound.getInteger("ColorMarker"));
- }
+ public void setColorMarker(int color) {
+ this.colorMarker = color;
+ }
- // Customized = TRUE if Speed or Smooth Exist
- if(compound.hasKey("Speed")){
- customized = true;
- speed = compound.getFloat("Speed");
- }
- if(compound.hasKey("Smooth")){
- customized = true;
- smooth = compound.getByte("Smooth");
- }
- if(compound.hasKey("RenderTicks")){
- customized = true;
- renderTicks = compound.getBoolean("RenderTicks");
- }
+ public String getComment() {
+ return this.comment;
+ }
- if (!customized) {
- this.speed = parent.speed;
- this.smooth = parent.smooth;
- this.renderTicks = parent.renderTicks;
- }
+ public void setComment(String comment) {
+ this.comment = comment;
+ }
- HashMap frameParts = new HashMap<>();
- NBTTagList list = compound.getTagList("FrameParts", 10);
- for (int i = 0; i < list.tagCount(); i++) {
- NBTTagCompound item = list.getCompoundTagAt(i);
- FramePart framePart = new FramePart();
- framePart.readFromNBT(item);
- if (!framePart.customized) {
- framePart.smooth = this.smooth;
- framePart.speed = this.speed;
- }
- frameParts.put(framePart.part,framePart);
- }
- this.frameParts = frameParts;
- }
+ public void readFromNBT(NBTTagCompound compound){
+ duration = compound.getInteger("Duration");
+ if (compound.hasKey("ColorMarker")) {
+ this.setColorMarker(compound.getInteger("ColorMarker"));
+ }
+ if (compound.hasKey("Comment")) {
+ this.comment = compound.getString("Comment");
+ }
- public NBTTagCompound writeToNBT(){
- NBTTagCompound compound = new NBTTagCompound();
- compound.setInteger("Duration", duration);
- compound.setInteger("ColorMarker", this.colorMarker);
+ // Customized = TRUE if Speed or Smooth Exist
+ if(compound.hasKey("Speed")){
+ customized = true;
+ speed = compound.getFloat("Speed");
+ }
+ if(compound.hasKey("Smooth")){
+ customized = true;
+ smooth = compound.getByte("Smooth");
+ }
- if(customized){
- compound.setFloat("Speed", speed);
- compound.setByte("Smooth", smooth);
- compound.setBoolean("RenderTicks", renderTicks);
- }
+ if (compound.hasKey("TickDuration")) {
+ customized = true;
+ this.tickDuration = compound.getInteger("TickDuration");
+ } else if(compound.hasKey("RenderTicks")){
+ customized = true;
+ this.tickDuration = compound.getBoolean("RenderTicks") ? 20 : 50;
+ }
- NBTTagList list = new NBTTagList();
- for(FramePart framePart : frameParts.values()){
- NBTTagCompound item = framePart.writeToNBT();
- list.appendTag(item);
- }
- compound.setTag("FrameParts", list);
- return compound;
- }
+ if (!customized && parent != null) {
+ this.speed = parent.speed;
+ this.smooth = parent.smooth;
+ this.tickDuration = parent.tickDuration;
+ }
- public Frame copy() {
- Frame frame = new Frame(this.duration);
- HashMap frameParts = this.frameParts;
- for (Map.Entry entry : frameParts.entrySet()) {
- frame.frameParts.put(entry.getKey(),entry.getValue().copy());
- }
- frame.parent = this.parent;
- frame.duration = this.duration;
- frame.customized = this.customized;
- frame.speed = this.speed;
- frame.smooth = this.smooth;
- frame.renderTicks = this.renderTicks;
- frame.colorMarker = this.colorMarker;
- return frame;
- }
+ HashMap frameParts = new HashMap<>();
+ NBTTagList list = compound.getTagList("FrameParts", 10);
+ for (int i = 0; i < list.tagCount(); i++) {
+ NBTTagCompound item = list.getCompoundTagAt(i);
+ FramePart framePart = new FramePart();
+ framePart.readFromNBT(item);
+ if (!framePart.customized) {
+ framePart.smooth = this.smooth;
+ framePart.speed = this.speed;
+ }
+ frameParts.put(framePart.part,framePart);
+ }
+ this.frameParts = frameParts;
+ }
+
+ public NBTTagCompound writeToNBT(){
+ NBTTagCompound compound = new NBTTagCompound();
+ compound.setInteger("Duration", duration);
+ compound.setInteger("ColorMarker", this.colorMarker);
+ compound.setString("Comment", this.comment);
+
+ if(customized){
+ compound.setFloat("Speed", speed);
+ compound.setByte("Smooth", smooth);
+ compound.setInteger("TickDuration", tickDuration);
+ }
+
+ NBTTagList list = new NBTTagList();
+ for(FramePart framePart : frameParts.values()){
+ NBTTagCompound item = framePart.writeToNBT();
+ list.appendTag(item);
+ }
+ compound.setTag("FrameParts", list);
+ return compound;
+ }
+
+ public Frame copy() {
+ Frame frame = new Frame(this.duration);
+ HashMap frameParts = this.frameParts;
+ for (Map.Entry entry : frameParts.entrySet()) {
+ frame.frameParts.put(entry.getKey(),entry.getValue().copy());
+ }
+ frame.parent = this.parent;
+ frame.duration = this.duration;
+ frame.customized = this.customized;
+ frame.speed = this.speed;
+ frame.smooth = this.smooth;
+ frame.tickDuration = this.tickDuration;
+ frame.colorMarker = this.colorMarker;
+ return frame;
+ }
}
diff --git a/src/main/java/noppes/npcs/controllers/data/PlayerDataScript.java b/src/main/java/noppes/npcs/controllers/data/PlayerDataScript.java
index 85096dfe0..041f81068 100644
--- a/src/main/java/noppes/npcs/controllers/data/PlayerDataScript.java
+++ b/src/main/java/noppes/npcs/controllers/data/PlayerDataScript.java
@@ -97,7 +97,7 @@ public class PlayerDataScript implements INpcScriptHandler {
}
public boolean isClient() {
- return this.player.isClientWorld();
+ return this.player != null && this.player.isClientWorld();
}
public boolean getEnabled() {
return ScriptController.Instance.playerScripts.enabled;
diff --git a/src/main/java/noppes/npcs/util/MillisTimer.java b/src/main/java/noppes/npcs/util/MillisTimer.java
new file mode 100644
index 000000000..82acb5c7f
--- /dev/null
+++ b/src/main/java/noppes/npcs/util/MillisTimer.java
@@ -0,0 +1,84 @@
+package noppes.npcs.util;
+
+public class MillisTimer {
+ float ticksPerSecond;
+ private double lastHRTime;
+ public int elapsedTicks;
+ public float renderPartialTicks;
+ public float timerSpeed = 1.0F;
+ public float elapsedPartialTicks;
+ private long lastSyncSysClock;
+ private long lastSyncHRClock;
+ private long field_74285_i;
+ private double timeSyncAdjustment = 1.0D;
+
+ public MillisTimer(float p_i1018_1_)
+ {
+ this.ticksPerSecond = p_i1018_1_;
+ this.lastSyncSysClock = this.getLastSyncSysClock();
+ this.lastSyncHRClock = System.nanoTime() / 1000000L;
+ }
+
+ /**
+ * Updates all fields of the Timer using the current time
+ */
+ public void updateTimer()
+ {
+ long i = this.getLastSyncSysClock();
+ long j = i - this.lastSyncSysClock;
+ long k = System.nanoTime() / 1000000L;
+ double d0 = (double)k / 1000.0D;
+
+ if (j <= 1000L && j >= 0L)
+ {
+ this.field_74285_i += j;
+
+ if (this.field_74285_i > 1000L)
+ {
+ long l = k - this.lastSyncHRClock;
+ double d1 = (double)this.field_74285_i / (double)l;
+ this.timeSyncAdjustment += (d1 - this.timeSyncAdjustment) * 0.20000000298023224D;
+ this.lastSyncHRClock = k;
+ this.field_74285_i = 0L;
+ }
+
+ if (this.field_74285_i < 0L)
+ {
+ this.lastSyncHRClock = k;
+ }
+ }
+ else
+ {
+ this.lastHRTime = d0;
+ }
+
+ this.lastSyncSysClock = i;
+ double d2 = (d0 - this.lastHRTime) * this.timeSyncAdjustment;
+ this.lastHRTime = d0;
+
+ if (d2 < 0.0D)
+ {
+ d2 = 0.0D;
+ }
+
+ if (d2 > 1.0D)
+ {
+ d2 = 1.0D;
+ }
+
+ this.elapsedPartialTicks = (float)((double)this.elapsedPartialTicks + d2 * (double)this.timerSpeed * (double)this.ticksPerSecond);
+ this.elapsedTicks = (int)this.elapsedPartialTicks;
+ this.elapsedPartialTicks -= (float)this.elapsedTicks;
+
+ if (this.elapsedTicks > 10)
+ {
+ this.elapsedTicks = 10;
+ }
+
+ this.renderPartialTicks = this.elapsedPartialTicks;
+ }
+
+ private long getLastSyncSysClock() {
+ return System.nanoTime() / 1_000_000L;
+ }
+}
From 34d002191e6ff8e3089829c94538e792f7ea2af4 Mon Sep 17 00:00:00 2001
From: "Luis C.M." <42545778+c0508383@users.noreply.github.com>
Date: Thu, 23 Jan 2025 00:35:25 -0600
Subject: [PATCH 005/357] Animation fixes, temporarily removed caching.
---
.../java/noppes/npcs/ServerEventsHandler.java | 26 +++++++++++++++----
.../npcs/client/PacketHandlerClient.java | 13 +++-------
.../npcs/controllers/data/AnimationData.java | 13 +++-------
3 files changed, 28 insertions(+), 24 deletions(-)
diff --git a/src/main/java/noppes/npcs/ServerEventsHandler.java b/src/main/java/noppes/npcs/ServerEventsHandler.java
index e4c8b9ff6..a9ae6a84a 100644
--- a/src/main/java/noppes/npcs/ServerEventsHandler.java
+++ b/src/main/java/noppes/npcs/ServerEventsHandler.java
@@ -491,12 +491,28 @@ public class ServerEventsHandler {
@SubscribeEvent
public void playerTracking(PlayerEvent.StartTracking event){
- if(!(event.target instanceof EntityNPCInterface) || event.target.worldObj.isRemote)
+ if(!(event.target instanceof EntityPlayerMP || event.target instanceof EntityNPCInterface) || event.target.worldObj.isRemote)
return;
- MarkData data = MarkData.get((EntityNPCInterface) event.target);
- if(data.marks.isEmpty())
- return;
- Server.sendData((EntityPlayerMP)event.entityPlayer, EnumPacketClient.MARK_DATA, event.target.getEntityId(), data.getNBT());
+ AnimationData animationData = AnimationData.getData(event.target);
+ if (animationData.isClientAnimating()) {
+ AnimationData playerAnimData = AnimationData.getData(event.entityPlayer);
+ Animation currentAnimation = animationData.currentClientAnimation;
+ NBTTagCompound compound = currentAnimation.writeToNBT();
+
+ if (playerAnimData.viewAnimation(currentAnimation, animationData, compound,
+ animationData.isClientAnimating(), currentAnimation.currentFrame, currentAnimation.currentFrameTime)) {
+ synchronized (CommonProxy.serverPlayingAnimations) {
+ CommonProxy.serverPlayingAnimations.add(animationData);
+ }
+ }
+ }
+
+ if (event.target instanceof EntityNPCInterface) {
+ MarkData data = MarkData.get((EntityNPCInterface) event.target);
+ if (data.marks.isEmpty())
+ return;
+ Server.sendData((EntityPlayerMP) event.entityPlayer, EnumPacketClient.MARK_DATA, event.target.getEntityId(), data.getNBT());
+ }
}
}
diff --git a/src/main/java/noppes/npcs/client/PacketHandlerClient.java b/src/main/java/noppes/npcs/client/PacketHandlerClient.java
index 07f025119..f9aa7dc8e 100644
--- a/src/main/java/noppes/npcs/client/PacketHandlerClient.java
+++ b/src/main/java/noppes/npcs/client/PacketHandlerClient.java
@@ -368,19 +368,14 @@ public class PacketHandlerClient extends PacketHandlerServer{
}
if (animationData != null) {
- int animationId;
- if (compound.hasKey("AnimationID")) {
- animationId = compound.getInteger("AnimationID");
- } else {
+ if (compound.hasKey("Animation")) {
Animation animation = new Animation();
animation.readFromNBT(compound.getCompoundTag("Animation"));
- ClientCacheHandler.animationCache.put(animation.getID(), animation);
- animationId = animation.getID();
+ animationData.setAnimation(animation);
+ } else {
+ animationData.setAnimation(null);
}
-
- animationData.setAnimation(ClientCacheHandler.animationCache.get(animationId));
animationData.readFromNBT(compound);
- Client.sendData(EnumPacketServer.CacheAnimation, animationId);
}
}
else if(type == EnumPacketClient.DISABLE_MOUSE_INPUT) {
diff --git a/src/main/java/noppes/npcs/controllers/data/AnimationData.java b/src/main/java/noppes/npcs/controllers/data/AnimationData.java
index 8ddf852ce..71818a669 100644
--- a/src/main/java/noppes/npcs/controllers/data/AnimationData.java
+++ b/src/main/java/noppes/npcs/controllers/data/AnimationData.java
@@ -120,12 +120,9 @@ public class AnimationData implements IAnimationData {
entities.removeIf(player -> Arrays.stream(excludedPlayers).anyMatch(exp -> player == exp));
- NBTTagCompound animationNBT = null;
for (EntityPlayer player : entities) {
AnimationData animationData = PlayerDataController.Instance.getPlayerData(player).animationData;
- if (animationNBT == null && this.animation != null && !animationData.isCached(this.animation.getID())) {
- animationNBT = this.animation.writeToNBT();
- }
+ NBTTagCompound animationNBT = this.animation != null ? this.animation.writeToNBT() : null;
animationData.viewAnimation(this.animation, this, animationNBT);
}
}
@@ -221,12 +218,8 @@ public class AnimationData implements IAnimationData {
data.setInteger("Time", time);
}
- if (animation != null) {
- if (this.cachedAnimationIDs.contains(animation.getID()) && !data.hasKey("Frame")) {
- data.setInteger("AnimationID", animation.getID());
- } else {
- data.setTag("Animation", animationNBT);
- }
+ if (animationNBT != null) {
+ data.setTag("Animation", animationNBT);
}
IAnimatable animatable = animationData.getEntity();
From 8a2a3e1ac357c2497c87d0b912a0b74fd948cc91 Mon Sep 17 00:00:00 2001
From: Kam
Date: Tue, 28 Jan 2025 15:49:17 -0500
Subject: [PATCH 006/357] Add all Client Packets
---
.../network/enums/EnumClientPacket.java | 59 ++++++++++++++
.../packets/client/ChatBubblePacket.java | 59 ++++++++++++++
.../network/packets/client/ChatPacket.java | 48 ++++++++++++
.../network/packets/client/ClonePacket.java | 41 ++++++++++
.../network/packets/client/ClonerPacket.java | 41 ++++++++++
.../network/packets/client/ConfigPacket.java | 61 +++++++++++++++
.../packets/client/ContinueSoundsPacket.java | 37 +++++++++
.../network/packets/client/DBCFormPacket.java | 37 +++++++++
.../packets/client/DeleteNpcPacket.java | 42 ++++++++++
.../packets/client/DialogDummyPacket.java | 41 ++++++++++
.../network/packets/client/DialogPacket.java | 45 +++++++++++
.../client/DisableMouseInputPacket.java | 48 ++++++++++++
.../network/packets/client/EditNpcPacket.java | 44 +++++++++++
.../packets/client/GuiClosePacket.java | 48 ++++++++++++
.../network/packets/client/GuiDataPacket.java | 52 +++++++++++++
.../packets/client/GuiErrorPacket.java | 46 +++++++++++
.../network/packets/client/GuiPacket.java | 42 ++++++++++
.../packets/client/GuiRedstonePacket.java | 40 ++++++++++
.../packets/client/GuiWaypointPacket.java | 40 ++++++++++
.../packets/client/IsGuiOpenPacket.java | 39 ++++++++++
.../packets/client/LargeNBTEndPacket.java | 38 +++++++++
.../packets/client/LargeNbtPartPacket.java | 39 ++++++++++
.../packets/client/MarkDataPacket.java | 47 +++++++++++
.../network/packets/client/MessagePacket.java | 53 +++++++++++++
.../packets/client/OpenBookPacket.java | 46 +++++++++++
.../client/OverlayQuestTrackingPacket.java | 47 +++++++++++
.../packets/client/ParticlePacket.java | 37 +++++++++
.../packets/client/PartyDataPacket.java | 52 +++++++++++++
.../packets/client/PauseSoundsPacket.java | 37 +++++++++
.../packets/client/PlayMusicPacket.java | 39 ++++++++++
.../packets/client/PlaySoundPacket.java | 42 ++++++++++
.../packets/client/PlaySoundToNoIdPacket.java | 42 ++++++++++
.../packets/client/PlaySoundToPacket.java | 43 +++++++++++
.../PlayerUpdateSkinOverlaysPacket.java | 45 +++++++++++
.../packets/client/QuestCompletionPacket.java | 38 +++++++++
.../network/packets/client/RolePacket.java | 49 ++++++++++++
.../client/ScriptOverlayClosePacket.java | 38 +++++++++
.../client/ScriptOverlayDataPacket.java | 42 ++++++++++
.../client/ScriptedParticlePacket.java | 37 +++++++++
.../packets/client/ScrollDataPacket.java | 37 +++++++++
.../packets/client/ScrollDataPartPacket.java | 37 +++++++++
.../packets/client/ScrollGroupPacket.java | 37 +++++++++
.../packets/client/ScrollGroupPartPacket.java | 37 +++++++++
.../packets/client/ScrollListPacket.java | 37 +++++++++
.../packets/client/ScrollSelectedPacket.java | 44 +++++++++++
.../packets/client/StopSoundForPacket.java | 38 +++++++++
.../packets/client/StopSoundsPacket.java | 37 +++++++++
.../packets/client/SwingPlayerArmPacket.java | 37 +++++++++
.../network/packets/client/SyncAddPacket.java | 41 ++++++++++
.../packets/client/SyncConfigPacket.java | 40 ++++++++++
.../network/packets/client/SyncEndPacket.java | 41 ++++++++++
.../packets/client/SyncPlayerPacket.java | 38 +++++++++
.../packets/client/SyncRecipesAddPacket.java | 51 ++++++++++++
.../SyncRecipesCarpentryBenchPacket.java | 38 +++++++++
.../client/SyncRecipesWorkbenchPacket.java | 38 +++++++++
.../packets/client/SyncRemovePacket.java | 39 ++++++++++
.../packets/client/SyncUpdatePacket.java | 41 ++++++++++
.../packets/client/SyncWeaponPacket.java | 48 ++++++++++++
.../packets/client/TeleporterPacket.java | 38 +++++++++
.../client/UpdateAnimationsPacket.java | 77 +++++++++++++++++++
.../packets/client/UpdateNpcPacket.java | 45 +++++++++++
.../packets/client/VillagerListPacket.java | 41 ++++++++++
src/main/java/noppes/npcs/Server.java | 1 -
63 files changed, 2678 insertions(+), 1 deletion(-)
create mode 100644 src/main/java/kamkeel/network/packets/client/ChatBubblePacket.java
create mode 100644 src/main/java/kamkeel/network/packets/client/ChatPacket.java
create mode 100644 src/main/java/kamkeel/network/packets/client/ClonePacket.java
create mode 100644 src/main/java/kamkeel/network/packets/client/ClonerPacket.java
create mode 100644 src/main/java/kamkeel/network/packets/client/ConfigPacket.java
create mode 100644 src/main/java/kamkeel/network/packets/client/ContinueSoundsPacket.java
create mode 100644 src/main/java/kamkeel/network/packets/client/DBCFormPacket.java
create mode 100644 src/main/java/kamkeel/network/packets/client/DeleteNpcPacket.java
create mode 100644 src/main/java/kamkeel/network/packets/client/DialogDummyPacket.java
create mode 100644 src/main/java/kamkeel/network/packets/client/DialogPacket.java
create mode 100644 src/main/java/kamkeel/network/packets/client/DisableMouseInputPacket.java
create mode 100644 src/main/java/kamkeel/network/packets/client/EditNpcPacket.java
create mode 100644 src/main/java/kamkeel/network/packets/client/GuiClosePacket.java
create mode 100644 src/main/java/kamkeel/network/packets/client/GuiDataPacket.java
create mode 100644 src/main/java/kamkeel/network/packets/client/GuiErrorPacket.java
create mode 100644 src/main/java/kamkeel/network/packets/client/GuiPacket.java
create mode 100644 src/main/java/kamkeel/network/packets/client/GuiRedstonePacket.java
create mode 100644 src/main/java/kamkeel/network/packets/client/GuiWaypointPacket.java
create mode 100644 src/main/java/kamkeel/network/packets/client/IsGuiOpenPacket.java
create mode 100644 src/main/java/kamkeel/network/packets/client/LargeNBTEndPacket.java
create mode 100644 src/main/java/kamkeel/network/packets/client/LargeNbtPartPacket.java
create mode 100644 src/main/java/kamkeel/network/packets/client/MarkDataPacket.java
create mode 100644 src/main/java/kamkeel/network/packets/client/MessagePacket.java
create mode 100644 src/main/java/kamkeel/network/packets/client/OpenBookPacket.java
create mode 100644 src/main/java/kamkeel/network/packets/client/OverlayQuestTrackingPacket.java
create mode 100644 src/main/java/kamkeel/network/packets/client/ParticlePacket.java
create mode 100644 src/main/java/kamkeel/network/packets/client/PartyDataPacket.java
create mode 100644 src/main/java/kamkeel/network/packets/client/PauseSoundsPacket.java
create mode 100644 src/main/java/kamkeel/network/packets/client/PlayMusicPacket.java
create mode 100644 src/main/java/kamkeel/network/packets/client/PlaySoundPacket.java
create mode 100644 src/main/java/kamkeel/network/packets/client/PlaySoundToNoIdPacket.java
create mode 100644 src/main/java/kamkeel/network/packets/client/PlaySoundToPacket.java
create mode 100644 src/main/java/kamkeel/network/packets/client/PlayerUpdateSkinOverlaysPacket.java
create mode 100644 src/main/java/kamkeel/network/packets/client/QuestCompletionPacket.java
create mode 100644 src/main/java/kamkeel/network/packets/client/RolePacket.java
create mode 100644 src/main/java/kamkeel/network/packets/client/ScriptOverlayClosePacket.java
create mode 100644 src/main/java/kamkeel/network/packets/client/ScriptOverlayDataPacket.java
create mode 100644 src/main/java/kamkeel/network/packets/client/ScriptedParticlePacket.java
create mode 100644 src/main/java/kamkeel/network/packets/client/ScrollDataPacket.java
create mode 100644 src/main/java/kamkeel/network/packets/client/ScrollDataPartPacket.java
create mode 100644 src/main/java/kamkeel/network/packets/client/ScrollGroupPacket.java
create mode 100644 src/main/java/kamkeel/network/packets/client/ScrollGroupPartPacket.java
create mode 100644 src/main/java/kamkeel/network/packets/client/ScrollListPacket.java
create mode 100644 src/main/java/kamkeel/network/packets/client/ScrollSelectedPacket.java
create mode 100644 src/main/java/kamkeel/network/packets/client/StopSoundForPacket.java
create mode 100644 src/main/java/kamkeel/network/packets/client/StopSoundsPacket.java
create mode 100644 src/main/java/kamkeel/network/packets/client/SwingPlayerArmPacket.java
create mode 100644 src/main/java/kamkeel/network/packets/client/SyncAddPacket.java
create mode 100644 src/main/java/kamkeel/network/packets/client/SyncConfigPacket.java
create mode 100644 src/main/java/kamkeel/network/packets/client/SyncEndPacket.java
create mode 100644 src/main/java/kamkeel/network/packets/client/SyncPlayerPacket.java
create mode 100644 src/main/java/kamkeel/network/packets/client/SyncRecipesAddPacket.java
create mode 100644 src/main/java/kamkeel/network/packets/client/SyncRecipesCarpentryBenchPacket.java
create mode 100644 src/main/java/kamkeel/network/packets/client/SyncRecipesWorkbenchPacket.java
create mode 100644 src/main/java/kamkeel/network/packets/client/SyncRemovePacket.java
create mode 100644 src/main/java/kamkeel/network/packets/client/SyncUpdatePacket.java
create mode 100644 src/main/java/kamkeel/network/packets/client/SyncWeaponPacket.java
create mode 100644 src/main/java/kamkeel/network/packets/client/TeleporterPacket.java
create mode 100644 src/main/java/kamkeel/network/packets/client/UpdateAnimationsPacket.java
create mode 100644 src/main/java/kamkeel/network/packets/client/UpdateNpcPacket.java
create mode 100644 src/main/java/kamkeel/network/packets/client/VillagerListPacket.java
diff --git a/src/main/java/kamkeel/network/enums/EnumClientPacket.java b/src/main/java/kamkeel/network/enums/EnumClientPacket.java
index 24f677c84..4dd58bfcf 100644
--- a/src/main/java/kamkeel/network/enums/EnumClientPacket.java
+++ b/src/main/java/kamkeel/network/enums/EnumClientPacket.java
@@ -1,4 +1,63 @@
package kamkeel.network.enums;
+// Packets to the Client
public enum EnumClientPacket {
+ CHAT,
+ MESSAGE,
+ PARTY_MESSAGE,
+ SYNCRECIPES_ADD,
+ SYNCRECIPES_WORKBENCH,
+ DIALOG,
+ QUEST_COMPLETION,
+ EDIT_NPC,
+ PLAY_SOUND,
+ PLAY_MUSIC,
+ UPDATE_NPC,
+ ROLE,
+ GUI,
+ SCRIPTED_PARTICLE,
+ PARTICLE,
+ DELETE_NPC,
+ SCROLL_LIST,
+ SCROLL_DATA,
+ SCROLL_DATA_PART,
+ SCROLL_GROUP,
+ SCROLL_GROUP_PART,
+ SCROLL_SELECTED,
+ GUI_REDSTONE,
+ GUI_WAYPOINT,
+ GUI_DATA,
+ GUI_ERROR,
+ GUI_CLOSE,
+ VILLAGER_LIST,
+ CHATBUBBLE,
+ SYNCRECIPES_CARPENTRYBENCH,
+ CLONE,
+ CLONER,
+ TELEPORTER,
+ OPEN_BOOK,
+ DIALOG_DUMMY,
+ CONFIG,
+ ISGUIOPEN,
+ SCRIPT_OVERLAY_DATA,
+ SCRIPT_OVERLAY_CLOSE,
+ SWING_PLAYER_ARM,
+ UPDATE_ITEM,
+ PLAYER_UPDATE_SKIN_OVERLAYS,
+ UPDATE_ANIMATIONS,
+ OVERLAY_QUEST_TRACKING,
+ DISABLE_MOUSE_INPUT,
+ PLAY_SOUND_TO,
+ PLAY_SOUND_TO_NO_ID,
+ STOP_SOUND_FOR,
+ PAUSE_SOUNDS,
+ CONTINUE_SOUNDS,
+ STOP_SOUNDS,
+ SYNC_WEAPON,
+ MARK_DATA,
+ SYNC_ADD, SYNC_END, SYNC_UPDATE, SYNC_REMOVE, SYNC_PLAYER,
+ SYNC_CONFIG,
+ DBC_FORM,
+ LARGE_NBT_PART, LARGE_NBT_END,
+ PARTY_DATA
}
diff --git a/src/main/java/kamkeel/network/packets/client/ChatBubblePacket.java b/src/main/java/kamkeel/network/packets/client/ChatBubblePacket.java
new file mode 100644
index 000000000..7a2867e6f
--- /dev/null
+++ b/src/main/java/kamkeel/network/packets/client/ChatBubblePacket.java
@@ -0,0 +1,59 @@
+package kamkeel.network.packets.client;
+
+import cpw.mods.fml.relauncher.Side;
+import io.netty.buffer.ByteBuf;
+import kamkeel.network.AbstractPacket;
+import kamkeel.network.PacketChannel;
+import kamkeel.network.PacketHandler;
+import kamkeel.network.enums.EnumClientPacket;
+import net.minecraft.client.Minecraft;
+import net.minecraft.entity.Entity;
+import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.util.ChatComponentTranslation;
+import noppes.npcs.CustomNpcs;
+import noppes.npcs.NoppesStringUtils;
+import noppes.npcs.Server;
+import noppes.npcs.client.RenderChatMessages;
+import noppes.npcs.entity.EntityNPCInterface;
+
+import java.io.IOException;
+
+public final class ChatBubblePacket extends AbstractPacket {
+ public static final String packetName = "Client|ChatBubble";
+
+ public ChatBubblePacket() {}
+
+
+ @Override
+ public Enum getType() {
+ return EnumClientPacket.CHATBUBBLE;
+ }
+
+ @Override
+ public PacketChannel getChannel() {
+ return PacketHandler.CLIENT_PACKET;
+ }
+
+ @Override
+ public void sendData(ByteBuf out) throws IOException {
+ // TODO: Send Packet
+ }
+
+ @Override
+ public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ if(CustomNpcs.side() != Side.CLIENT)
+ return;
+
+ Entity entity = Minecraft.getMinecraft().theWorld.getEntityByID(in.readInt());
+ if(entity == null || !(entity instanceof EntityNPCInterface))
+ return;
+ EntityNPCInterface npc = (EntityNPCInterface) entity;
+ if(npc.messages == null)
+ npc.messages = new RenderChatMessages();
+ String text = NoppesStringUtils.formatText(Server.readString(in), player, npc);
+ npc.messages.addMessage(text, npc);
+
+ if(in.readBoolean())
+ player.addChatMessage(new ChatComponentTranslation(npc.getCommandSenderName() + ": " + text));
+ }
+}
diff --git a/src/main/java/kamkeel/network/packets/client/ChatPacket.java b/src/main/java/kamkeel/network/packets/client/ChatPacket.java
new file mode 100644
index 000000000..5aabefda8
--- /dev/null
+++ b/src/main/java/kamkeel/network/packets/client/ChatPacket.java
@@ -0,0 +1,48 @@
+package kamkeel.network.packets.client;
+
+import cpw.mods.fml.relauncher.Side;
+import io.netty.buffer.ByteBuf;
+import kamkeel.network.AbstractPacket;
+import kamkeel.network.PacketChannel;
+import kamkeel.network.PacketHandler;
+import kamkeel.network.enums.EnumClientPacket;
+import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.util.ChatComponentTranslation;
+import noppes.npcs.CustomNpcs;
+import noppes.npcs.Server;
+
+import java.io.IOException;
+
+public final class ChatPacket extends AbstractPacket {
+ public static final String packetName = "Client|Chat";
+
+ public ChatPacket() {}
+
+ @Override
+ public Enum getType() {
+ return EnumClientPacket.CHAT;
+ }
+
+ @Override
+ public PacketChannel getChannel() {
+ return PacketHandler.CLIENT_PACKET;
+ }
+
+ @Override
+ public void sendData(ByteBuf out) throws IOException {
+ // TODO: Send Packet
+ }
+
+ @Override
+ public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ if(CustomNpcs.side() != Side.CLIENT)
+ return;
+
+ StringBuilder message = new StringBuilder();
+ String str;
+ while ((str = Server.readString(in)) != null && !str.isEmpty()) {
+ message.append(str);
+ }
+ player.addChatMessage(new ChatComponentTranslation(message.toString()));
+ }
+}
diff --git a/src/main/java/kamkeel/network/packets/client/ClonePacket.java b/src/main/java/kamkeel/network/packets/client/ClonePacket.java
new file mode 100644
index 000000000..1719d2a20
--- /dev/null
+++ b/src/main/java/kamkeel/network/packets/client/ClonePacket.java
@@ -0,0 +1,41 @@
+package kamkeel.network.packets.client;
+
+import io.netty.buffer.ByteBuf;
+import kamkeel.network.AbstractPacket;
+import kamkeel.network.PacketChannel;
+import kamkeel.network.PacketHandler;
+import kamkeel.network.enums.EnumClientPacket;
+import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.nbt.NBTTagCompound;
+import noppes.npcs.Server;
+import noppes.npcs.client.gui.player.GuiNpcMobSpawnerAdd;
+import noppes.npcs.NoppesUtil;
+
+import java.io.IOException;
+
+public final class ClonePacket extends AbstractPacket {
+ public static final String packetName = "Client|Clone";
+
+ public ClonePacket() {}
+
+ @Override
+ public Enum getType() {
+ return EnumClientPacket.CLONE;
+ }
+
+ @Override
+ public PacketChannel getChannel() {
+ return PacketHandler.CLIENT_PACKET;
+ }
+
+ @Override
+ public void sendData(ByteBuf out) throws IOException {
+ // TODO: Send Packet
+ }
+
+ @Override
+ public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ NBTTagCompound nbt = Server.readNBT(in);
+ NoppesUtil.openGUI(player, new GuiNpcMobSpawnerAdd(nbt));
+ }
+}
diff --git a/src/main/java/kamkeel/network/packets/client/ClonerPacket.java b/src/main/java/kamkeel/network/packets/client/ClonerPacket.java
new file mode 100644
index 000000000..f4ae249fb
--- /dev/null
+++ b/src/main/java/kamkeel/network/packets/client/ClonerPacket.java
@@ -0,0 +1,41 @@
+package kamkeel.network.packets.client;
+
+import io.netty.buffer.ByteBuf;
+import kamkeel.network.AbstractPacket;
+import kamkeel.network.PacketChannel;
+import kamkeel.network.PacketHandler;
+import kamkeel.network.enums.EnumClientPacket;
+import net.minecraft.entity.player.EntityPlayer;
+import noppes.npcs.CustomNpcs;
+import noppes.npcs.constants.EnumGuiType;
+
+import java.io.IOException;
+
+public final class ClonerPacket extends AbstractPacket {
+ public static final String packetName = "Client|Cloner";
+
+ public ClonerPacket() {}
+
+ @Override
+ public Enum getType() {
+ return EnumClientPacket.CLONER;
+ }
+
+ @Override
+ public PacketChannel getChannel() {
+ return PacketHandler.CLIENT_PACKET;
+ }
+
+ @Override
+ public void sendData(ByteBuf out) throws IOException {
+ // TODO: Send Packet
+ }
+
+ @Override
+ public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ int x = in.readInt();
+ int y = in.readInt();
+ int z = in.readInt();
+ CustomNpcs.proxy.openGui(x, y, z, EnumGuiType.MobSpawner, player);
+ }
+}
diff --git a/src/main/java/kamkeel/network/packets/client/ConfigPacket.java b/src/main/java/kamkeel/network/packets/client/ConfigPacket.java
new file mode 100644
index 000000000..d2b7f075c
--- /dev/null
+++ b/src/main/java/kamkeel/network/packets/client/ConfigPacket.java
@@ -0,0 +1,61 @@
+package kamkeel.network.packets.client;
+
+import io.netty.buffer.ByteBuf;
+import kamkeel.network.AbstractPacket;
+import kamkeel.network.PacketChannel;
+import kamkeel.network.PacketHandler;
+import kamkeel.network.enums.EnumClientPacket;
+import net.minecraft.entity.player.EntityPlayer;
+import noppes.npcs.Server;
+import noppes.npcs.client.ClientProxy;
+import noppes.npcs.config.ConfigClient;
+import noppes.npcs.client.ClientProxy.FontContainer;
+import net.minecraft.util.ChatComponentTranslation;
+
+import java.io.IOException;
+
+public final class ConfigPacket extends AbstractPacket {
+ public static final String packetName = "Client|Config";
+
+ public ConfigPacket() {}
+
+ @Override
+ public Enum getType() {
+ return EnumClientPacket.CONFIG;
+ }
+
+ @Override
+ public PacketChannel getChannel() {
+ return PacketHandler.CLIENT_PACKET;
+ }
+
+ @Override
+ public void sendData(ByteBuf out) throws IOException {
+ // TODO: Send Packet
+ }
+
+ @Override
+ public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ int configType = in.readInt();
+ if (configType == 0) { // Font Configuration
+ String font = Server.readString(in);
+ int size = in.readInt();
+ if (!font.isEmpty()) {
+ ConfigClient.FontType = font;
+ ConfigClient.FontSize = size;
+ ClientProxy.Font = new FontContainer(ConfigClient.FontType, ConfigClient.FontSize);
+
+ ConfigClient.FontTypeProperty.set(ConfigClient.FontType);
+ ConfigClient.FontSizeProperty.set(ConfigClient.FontSize);
+
+ if (ConfigClient.config.hasChanged()) {
+ ConfigClient.config.save();
+ }
+
+ player.addChatMessage(new ChatComponentTranslation("Font set to %s", ClientProxy.Font.getName()));
+ } else {
+ player.addChatMessage(new ChatComponentTranslation("Current font is %s", ClientProxy.Font.getName()));
+ }
+ }
+ }
+}
diff --git a/src/main/java/kamkeel/network/packets/client/ContinueSoundsPacket.java b/src/main/java/kamkeel/network/packets/client/ContinueSoundsPacket.java
new file mode 100644
index 000000000..16dd9319c
--- /dev/null
+++ b/src/main/java/kamkeel/network/packets/client/ContinueSoundsPacket.java
@@ -0,0 +1,37 @@
+package kamkeel.network.packets.client;
+
+import io.netty.buffer.ByteBuf;
+import kamkeel.network.AbstractPacket;
+import kamkeel.network.PacketChannel;
+import kamkeel.network.PacketHandler;
+import kamkeel.network.enums.EnumClientPacket;
+import net.minecraft.entity.player.EntityPlayer;
+import noppes.npcs.client.controllers.ScriptSoundController;
+
+import java.io.IOException;
+
+public final class ContinueSoundsPacket extends AbstractPacket {
+ public static final String packetName = "Client|ContinueSounds";
+
+ public ContinueSoundsPacket() {}
+
+ @Override
+ public Enum getType() {
+ return EnumClientPacket.CONTINUE_SOUNDS;
+ }
+
+ @Override
+ public PacketChannel getChannel() {
+ return PacketHandler.CLIENT_PACKET;
+ }
+
+ @Override
+ public void sendData(ByteBuf out) throws IOException {
+ // TODO: Send Packet
+ }
+
+ @Override
+ public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ ScriptSoundController.Instance.continueAllSounds();
+ }
+}
diff --git a/src/main/java/kamkeel/network/packets/client/DBCFormPacket.java b/src/main/java/kamkeel/network/packets/client/DBCFormPacket.java
new file mode 100644
index 000000000..e0c11af5b
--- /dev/null
+++ b/src/main/java/kamkeel/network/packets/client/DBCFormPacket.java
@@ -0,0 +1,37 @@
+package kamkeel.network.packets.client;
+
+import io.netty.buffer.ByteBuf;
+import kamkeel.network.AbstractPacket;
+import kamkeel.network.PacketChannel;
+import kamkeel.network.PacketHandler;
+import kamkeel.network.enums.EnumClientPacket;
+import net.minecraft.entity.player.EntityPlayer;
+import noppes.npcs.NoppesUtil;
+
+import java.io.IOException;
+
+public final class DBCFormPacket extends AbstractPacket {
+ public static final String packetName = "Client|DBCForm";
+
+ public DBCFormPacket() {}
+
+ @Override
+ public Enum getType() {
+ return EnumClientPacket.DBC_FORM;
+ }
+
+ @Override
+ public PacketChannel getChannel() {
+ return PacketHandler.CLIENT_PACKET;
+ }
+
+ @Override
+ public void sendData(ByteBuf out) throws IOException {
+ // TODO: Send Packet
+ }
+
+ @Override
+ public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ NoppesUtil.handleFormEnd();
+ }
+}
diff --git a/src/main/java/kamkeel/network/packets/client/DeleteNpcPacket.java b/src/main/java/kamkeel/network/packets/client/DeleteNpcPacket.java
new file mode 100644
index 000000000..98537c751
--- /dev/null
+++ b/src/main/java/kamkeel/network/packets/client/DeleteNpcPacket.java
@@ -0,0 +1,42 @@
+package kamkeel.network.packets.client;
+
+import io.netty.buffer.ByteBuf;
+import kamkeel.network.AbstractPacket;
+import kamkeel.network.PacketChannel;
+import kamkeel.network.PacketHandler;
+import kamkeel.network.enums.EnumClientPacket;
+import net.minecraft.client.Minecraft;
+import net.minecraft.entity.Entity;
+import net.minecraft.entity.player.EntityPlayer;
+import noppes.npcs.entity.EntityNPCInterface;
+
+import java.io.IOException;
+
+public final class DeleteNpcPacket extends AbstractPacket {
+ public static final String packetName = "Client|DeleteNpc";
+
+ public DeleteNpcPacket() {}
+
+ @Override
+ public Enum getType() {
+ return EnumClientPacket.DELETE_NPC;
+ }
+
+ @Override
+ public PacketChannel getChannel() {
+ return PacketHandler.CLIENT_PACKET;
+ }
+
+ @Override
+ public void sendData(ByteBuf out) throws IOException {
+ // TODO: Send Packet
+ }
+
+ @Override
+ public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ Entity entity = Minecraft.getMinecraft().theWorld.getEntityByID(in.readInt());
+ if (entity instanceof EntityNPCInterface) {
+ ((EntityNPCInterface) entity).delete();
+ }
+ }
+}
diff --git a/src/main/java/kamkeel/network/packets/client/DialogDummyPacket.java b/src/main/java/kamkeel/network/packets/client/DialogDummyPacket.java
new file mode 100644
index 000000000..221f66aa8
--- /dev/null
+++ b/src/main/java/kamkeel/network/packets/client/DialogDummyPacket.java
@@ -0,0 +1,41 @@
+package kamkeel.network.packets.client;
+
+import io.netty.buffer.ByteBuf;
+import kamkeel.network.AbstractPacket;
+import kamkeel.network.PacketChannel;
+import kamkeel.network.PacketHandler;
+import kamkeel.network.enums.EnumClientPacket;
+import net.minecraft.entity.player.EntityPlayer;
+import noppes.npcs.Server;
+import noppes.npcs.client.NoppesUtil;
+import noppes.npcs.entity.EntityDialogNpc;
+
+import java.io.IOException;
+
+public final class DialogDummyPacket extends AbstractPacket {
+ public static final String packetName = "Client|DialogDummy";
+
+ public DialogDummyPacket() {}
+
+ @Override
+ public Enum getType() {
+ return EnumClientPacket.DIALOG_DUMMY;
+ }
+
+ @Override
+ public PacketChannel getChannel() {
+ return PacketHandler.CLIENT_PACKET;
+ }
+
+ @Override
+ public void sendData(ByteBuf out) throws IOException {
+ // TODO: Send Packet
+ }
+
+ @Override
+ public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ EntityDialogNpc npc = new EntityDialogNpc(player.worldObj);
+ npc.display.name = Server.readString(in);
+ NoppesUtil.openDialog(Server.readNBT(in), npc, player);
+ }
+}
diff --git a/src/main/java/kamkeel/network/packets/client/DialogPacket.java b/src/main/java/kamkeel/network/packets/client/DialogPacket.java
new file mode 100644
index 000000000..343b07891
--- /dev/null
+++ b/src/main/java/kamkeel/network/packets/client/DialogPacket.java
@@ -0,0 +1,45 @@
+package kamkeel.network.packets.client;
+
+import io.netty.buffer.ByteBuf;
+import kamkeel.network.AbstractPacket;
+import kamkeel.network.PacketChannel;
+import kamkeel.network.PacketHandler;
+import kamkeel.network.enums.EnumClientPacket;
+import net.minecraft.client.Minecraft;
+import net.minecraft.entity.Entity;
+import net.minecraft.entity.player.EntityPlayer;
+import noppes.npcs.Server;
+import noppes.npcs.client.NoppesUtil;
+import noppes.npcs.entity.EntityNPCInterface;
+
+import java.io.IOException;
+
+public final class DialogPacket extends AbstractPacket {
+ public static final String packetName = "Client|Dialog";
+
+ public DialogPacket() {}
+
+ @Override
+ public Enum getType() {
+ return EnumClientPacket.DIALOG;
+ }
+
+ @Override
+ public PacketChannel getChannel() {
+ return PacketHandler.CLIENT_PACKET;
+ }
+
+ @Override
+ public void sendData(ByteBuf out) throws IOException {
+ // TODO: Send Packet
+ }
+
+ @Override
+ public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ Entity entity = Minecraft.getMinecraft().theWorld.getEntityByID(in.readInt());
+ if (!(entity instanceof EntityNPCInterface)) {
+ return;
+ }
+ NoppesUtil.openDialog(Server.readNBT(in), (EntityNPCInterface) entity, player);
+ }
+}
diff --git a/src/main/java/kamkeel/network/packets/client/DisableMouseInputPacket.java b/src/main/java/kamkeel/network/packets/client/DisableMouseInputPacket.java
new file mode 100644
index 000000000..4723b4b3a
--- /dev/null
+++ b/src/main/java/kamkeel/network/packets/client/DisableMouseInputPacket.java
@@ -0,0 +1,48 @@
+package kamkeel.network.packets.client;
+
+import io.netty.buffer.ByteBuf;
+import kamkeel.network.AbstractPacket;
+import kamkeel.network.PacketChannel;
+import kamkeel.network.PacketHandler;
+import kamkeel.network.enums.EnumClientPacket;
+import net.minecraft.entity.player.EntityPlayer;
+import noppes.npcs.client.ClientEventHandler;
+
+import java.io.IOException;
+
+public final class DisableMouseInputPacket extends AbstractPacket {
+ public static final String packetName = "Client|DisableMouseInput";
+
+ public DisableMouseInputPacket() {}
+
+ @Override
+ public Enum getType() {
+ return EnumClientPacket.DISABLE_MOUSE_INPUT;
+ }
+
+ @Override
+ public PacketChannel getChannel() {
+ return PacketHandler.CLIENT_PACKET;
+ }
+
+ @Override
+ public void sendData(ByteBuf out) throws IOException {
+ // TODO: Send Packet
+ }
+
+ @Override
+ public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ long duration = in.readLong();
+ String parsedButtons = Server.readString(in);
+
+ if (parsedButtons == null || parsedButtons.isEmpty()) {
+ ClientEventHandler.disabledButtonTimes.put(-1, duration);
+ return;
+ }
+
+ String[] buttonIds = parsedButtons.split(";");
+ for (String button : buttonIds) {
+ ClientEventHandler.disabledButtonTimes.put(Integer.parseInt(button), duration);
+ }
+ }
+}
diff --git a/src/main/java/kamkeel/network/packets/client/EditNpcPacket.java b/src/main/java/kamkeel/network/packets/client/EditNpcPacket.java
new file mode 100644
index 000000000..4fc5accc5
--- /dev/null
+++ b/src/main/java/kamkeel/network/packets/client/EditNpcPacket.java
@@ -0,0 +1,44 @@
+package kamkeel.network.packets.client;
+
+import io.netty.buffer.ByteBuf;
+import kamkeel.network.AbstractPacket;
+import kamkeel.network.PacketChannel;
+import kamkeel.network.PacketHandler;
+import kamkeel.network.enums.EnumClientPacket;
+import net.minecraft.client.Minecraft;
+import net.minecraft.entity.Entity;
+import net.minecraft.entity.player.EntityPlayer;
+import noppes.npcs.client.NoppesUtil;
+import noppes.npcs.entity.EntityNPCInterface;
+
+import java.io.IOException;
+
+public final class EditNpcPacket extends AbstractPacket {
+ public static final String packetName = "Client|EditNpc";
+
+ public EditNpcPacket() {}
+
+ @Override
+ public Enum getType() {
+ return EnumClientPacket.EDIT_NPC;
+ }
+
+ @Override
+ public PacketChannel getChannel() {
+ return PacketHandler.CLIENT_PACKET;
+ }
+
+ @Override
+ public void sendData(ByteBuf out) throws IOException {
+ // TODO: Send Packet
+ }
+
+ @Override
+ public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ Entity entity = Minecraft.getMinecraft().theWorld.getEntityByID(in.readInt());
+ if (!(entity instanceof EntityNPCInterface)) {
+ return;
+ }
+ NoppesUtil.setLastNpc((EntityNPCInterface) entity);
+ }
+}
diff --git a/src/main/java/kamkeel/network/packets/client/GuiClosePacket.java b/src/main/java/kamkeel/network/packets/client/GuiClosePacket.java
new file mode 100644
index 000000000..1b76f3e49
--- /dev/null
+++ b/src/main/java/kamkeel/network/packets/client/GuiClosePacket.java
@@ -0,0 +1,48 @@
+package kamkeel.network.packets.client;
+
+import io.netty.buffer.ByteBuf;
+import kamkeel.network.AbstractPacket;
+import kamkeel.network.PacketChannel;
+import kamkeel.network.PacketHandler;
+import kamkeel.network.enums.EnumClientPacket;
+import net.minecraft.client.Minecraft;
+import net.minecraft.client.gui.GuiScreen;
+import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.nbt.NBTTagCompound;
+import noppes.npcs.Server;
+import noppes.npcs.client.gui.util.IGuiClose;
+
+import java.io.IOException;
+
+public final class GuiClosePacket extends AbstractPacket {
+ public static final String packetName = "Client|GuiClose";
+
+ public GuiClosePacket() {}
+
+ @Override
+ public Enum getType() {
+ return EnumClientPacket.GUI_CLOSE;
+ }
+
+ @Override
+ public PacketChannel getChannel() {
+ return PacketHandler.CLIENT_PACKET;
+ }
+
+ @Override
+ public void sendData(ByteBuf out) throws IOException {
+ // TODO: Send Packet
+ }
+
+ @Override
+ public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ GuiScreen gui = Minecraft.getMinecraft().currentScreen;
+ if (gui instanceof IGuiClose) {
+ int closeCode = in.readInt();
+ NBTTagCompound nbt = Server.readNBT(in);
+ ((IGuiClose) gui).setClose(closeCode, nbt);
+ }
+ Minecraft.getMinecraft().displayGuiScreen(null);
+ Minecraft.getMinecraft().setIngameFocus();
+ }
+}
diff --git a/src/main/java/kamkeel/network/packets/client/GuiDataPacket.java b/src/main/java/kamkeel/network/packets/client/GuiDataPacket.java
new file mode 100644
index 000000000..d75690875
--- /dev/null
+++ b/src/main/java/kamkeel/network/packets/client/GuiDataPacket.java
@@ -0,0 +1,52 @@
+package kamkeel.network.packets.client;
+
+import io.netty.buffer.ByteBuf;
+import kamkeel.network.AbstractPacket;
+import kamkeel.network.PacketChannel;
+import kamkeel.network.PacketHandler;
+import kamkeel.network.enums.EnumClientPacket;
+import net.minecraft.client.Minecraft;
+import net.minecraft.client.gui.GuiScreen;
+import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.nbt.NBTTagCompound;
+import noppes.npcs.Server;
+import noppes.npcs.client.gui.util.GuiContainerNPCInterface;
+import noppes.npcs.client.gui.util.GuiNPCInterface;
+import noppes.npcs.client.gui.util.IGuiData;
+
+import java.io.IOException;
+
+public final class GuiDataPacket extends AbstractPacket {
+ public static final String packetName = "Client|GuiData";
+
+ public GuiDataPacket() {}
+
+ @Override
+ public Enum getType() {
+ return EnumClientPacket.GUI_DATA;
+ }
+
+ @Override
+ public PacketChannel getChannel() {
+ return PacketHandler.CLIENT_PACKET;
+ }
+
+ @Override
+ public void sendData(ByteBuf out) throws IOException {
+ // TODO: Send Packet
+ }
+
+ @Override
+ public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ GuiScreen gui = Minecraft.getMinecraft().currentScreen;
+ if (gui instanceof GuiNPCInterface && ((GuiNPCInterface) gui).hasSubGui()) {
+ gui = (GuiScreen) ((GuiNPCInterface) gui).getSubGui();
+ } else if (gui instanceof GuiContainerNPCInterface && ((GuiContainerNPCInterface) gui).hasSubGui()) {
+ gui = (GuiScreen) ((GuiContainerNPCInterface) gui).getSubGui();
+ }
+ if (gui instanceof IGuiData) {
+ NBTTagCompound nbt = Server.readNBT(in);
+ ((IGuiData) gui).setGuiData(nbt);
+ }
+ }
+}
diff --git a/src/main/java/kamkeel/network/packets/client/GuiErrorPacket.java b/src/main/java/kamkeel/network/packets/client/GuiErrorPacket.java
new file mode 100644
index 000000000..474584379
--- /dev/null
+++ b/src/main/java/kamkeel/network/packets/client/GuiErrorPacket.java
@@ -0,0 +1,46 @@
+package kamkeel.network.packets.client;
+
+import io.netty.buffer.ByteBuf;
+import kamkeel.network.AbstractPacket;
+import kamkeel.network.PacketChannel;
+import kamkeel.network.PacketHandler;
+import kamkeel.network.enums.EnumClientPacket;
+import net.minecraft.client.Minecraft;
+import net.minecraft.client.gui.GuiScreen;
+import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.nbt.NBTTagCompound;
+import noppes.npcs.Server;
+import noppes.npcs.client.gui.util.IGuiError;
+
+import java.io.IOException;
+
+public final class GuiErrorPacket extends AbstractPacket {
+ public static final String packetName = "Client|GuiError";
+
+ public GuiErrorPacket() {}
+
+ @Override
+ public Enum getType() {
+ return EnumClientPacket.GUI_ERROR;
+ }
+
+ @Override
+ public PacketChannel getChannel() {
+ return PacketHandler.CLIENT_PACKET;
+ }
+
+ @Override
+ public void sendData(ByteBuf out) throws IOException {
+ // TODO: Send Packet
+ }
+
+ @Override
+ public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ GuiScreen gui = Minecraft.getMinecraft().currentScreen;
+ if (gui instanceof IGuiError) {
+ int errorCode = in.readInt();
+ NBTTagCompound nbt = Server.readNBT(in);
+ ((IGuiError) gui).setError(errorCode, nbt);
+ }
+ }
+}
diff --git a/src/main/java/kamkeel/network/packets/client/GuiPacket.java b/src/main/java/kamkeel/network/packets/client/GuiPacket.java
new file mode 100644
index 000000000..ece5bbcfa
--- /dev/null
+++ b/src/main/java/kamkeel/network/packets/client/GuiPacket.java
@@ -0,0 +1,42 @@
+package kamkeel.network.packets.client;
+
+import io.netty.buffer.ByteBuf;
+import kamkeel.network.AbstractPacket;
+import kamkeel.network.PacketChannel;
+import kamkeel.network.PacketHandler;
+import kamkeel.network.enums.EnumClientPacket;
+import net.minecraft.entity.player.EntityPlayer;
+import noppes.npcs.CustomNpcs;
+import noppes.npcs.constants.EnumGuiType;
+
+import java.io.IOException;
+
+public final class GuiPacket extends AbstractPacket {
+ public static final String packetName = "Client|Gui";
+
+ public GuiPacket() {}
+
+ @Override
+ public Enum getType() {
+ return EnumClientPacket.GUI;
+ }
+
+ @Override
+ public PacketChannel getChannel() {
+ return PacketHandler.CLIENT_PACKET;
+ }
+
+ @Override
+ public void sendData(ByteBuf out) throws IOException {
+ // TODO: Send Packet
+ }
+
+ @Override
+ public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ EnumGuiType gui = EnumGuiType.values()[in.readInt()];
+ int x = in.readInt();
+ int y = in.readInt();
+ int z = in.readInt();
+ CustomNpcs.proxy.openGui(null, gui, x, y, z);
+ }
+}
diff --git a/src/main/java/kamkeel/network/packets/client/GuiRedstonePacket.java b/src/main/java/kamkeel/network/packets/client/GuiRedstonePacket.java
new file mode 100644
index 000000000..de0c3bd4c
--- /dev/null
+++ b/src/main/java/kamkeel/network/packets/client/GuiRedstonePacket.java
@@ -0,0 +1,40 @@
+package kamkeel.network.packets.client;
+
+import io.netty.buffer.ByteBuf;
+import kamkeel.network.AbstractPacket;
+import kamkeel.network.PacketChannel;
+import kamkeel.network.PacketHandler;
+import kamkeel.network.enums.EnumClientPacket;
+import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.nbt.NBTTagCompound;
+import noppes.npcs.Server;
+import noppes.npcs.NoppesUtil;
+
+import java.io.IOException;
+
+public final class GuiRedstonePacket extends AbstractPacket {
+ public static final String packetName = "Client|GuiRedstone";
+
+ public GuiRedstonePacket() {}
+
+ @Override
+ public Enum getType() {
+ return EnumClientPacket.GUI_REDSTONE;
+ }
+
+ @Override
+ public PacketChannel getChannel() {
+ return PacketHandler.CLIENT_PACKET;
+ }
+
+ @Override
+ public void sendData(ByteBuf out) throws IOException {
+ // TODO: Send Packet
+ }
+
+ @Override
+ public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ NBTTagCompound nbt = Server.readNBT(in);
+ NoppesUtil.saveRedstoneBlock(player, nbt);
+ }
+}
diff --git a/src/main/java/kamkeel/network/packets/client/GuiWaypointPacket.java b/src/main/java/kamkeel/network/packets/client/GuiWaypointPacket.java
new file mode 100644
index 000000000..4553e2040
--- /dev/null
+++ b/src/main/java/kamkeel/network/packets/client/GuiWaypointPacket.java
@@ -0,0 +1,40 @@
+package kamkeel.network.packets.client;
+
+import io.netty.buffer.ByteBuf;
+import kamkeel.network.AbstractPacket;
+import kamkeel.network.PacketChannel;
+import kamkeel.network.PacketHandler;
+import kamkeel.network.enums.EnumClientPacket;
+import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.nbt.NBTTagCompound;
+import noppes.npcs.Server;
+import noppes.npcs.NoppesUtil;
+
+import java.io.IOException;
+
+public final class GuiWaypointPacket extends AbstractPacket {
+ public static final String packetName = "Client|GuiWaypoint";
+
+ public GuiWaypointPacket() {}
+
+ @Override
+ public Enum getType() {
+ return EnumClientPacket.GUI_WAYPOINT;
+ }
+
+ @Override
+ public PacketChannel getChannel() {
+ return PacketHandler.CLIENT_PACKET;
+ }
+
+ @Override
+ public void sendData(ByteBuf out) throws IOException {
+ // TODO: Send Packet
+ }
+
+ @Override
+ public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ NBTTagCompound nbt = Server.readNBT(in);
+ NoppesUtil.saveWayPointBlock(player, nbt);
+ }
+}
diff --git a/src/main/java/kamkeel/network/packets/client/IsGuiOpenPacket.java b/src/main/java/kamkeel/network/packets/client/IsGuiOpenPacket.java
new file mode 100644
index 000000000..8f44e2602
--- /dev/null
+++ b/src/main/java/kamkeel/network/packets/client/IsGuiOpenPacket.java
@@ -0,0 +1,39 @@
+package kamkeel.network.packets.client;
+
+import io.netty.buffer.ByteBuf;
+import kamkeel.network.AbstractPacket;
+import kamkeel.network.PacketChannel;
+import kamkeel.network.PacketHandler;
+import kamkeel.network.enums.EnumClientPacket;
+import net.minecraft.client.Minecraft;
+import net.minecraft.entity.player.EntityPlayer;
+import noppes.npcs.NoppesUtil;
+
+import java.io.IOException;
+
+public final class IsGuiOpenPacket extends AbstractPacket {
+ public static final String packetName = "Client|IsGuiOpen";
+
+ public IsGuiOpenPacket() {}
+
+ @Override
+ public Enum getType() {
+ return EnumClientPacket.ISGUIOPEN;
+ }
+
+ @Override
+ public PacketChannel getChannel() {
+ return PacketHandler.CLIENT_PACKET;
+ }
+
+ @Override
+ public void sendData(ByteBuf out) throws IOException {
+ // TODO: Send Packet
+ }
+
+ @Override
+ public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ boolean isGuiOpen = Minecraft.getMinecraft().currentScreen != null;
+ NoppesUtil.isGUIOpen(isGuiOpen);
+ }
+}
diff --git a/src/main/java/kamkeel/network/packets/client/LargeNBTEndPacket.java b/src/main/java/kamkeel/network/packets/client/LargeNBTEndPacket.java
new file mode 100644
index 000000000..19dfe7a1f
--- /dev/null
+++ b/src/main/java/kamkeel/network/packets/client/LargeNBTEndPacket.java
@@ -0,0 +1,38 @@
+package kamkeel.network.packets.client;
+
+import io.netty.buffer.ByteBuf;
+import kamkeel.network.AbstractPacket;
+import kamkeel.network.PacketChannel;
+import kamkeel.network.PacketHandler;
+import kamkeel.network.enums.EnumClientPacket;
+import net.minecraft.entity.player.EntityPlayer;
+import noppes.npcs.NoppesUtil;
+
+import java.io.IOException;
+
+public final class LargeNBTEndPacket extends AbstractPacket {
+ public static final String packetName = "Client|LargeNBTEnd";
+
+ public LargeNBTEndPacket() {}
+
+ @Override
+ public Enum getType() {
+ return EnumClientPacket.LARGE_NBT_END;
+ }
+
+ @Override
+ public PacketChannel getChannel() {
+ return PacketHandler.CLIENT_PACKET;
+ }
+
+ @Override
+ public void sendData(ByteBuf out) throws IOException {
+ // TODO: Send Packet
+ }
+
+ @Override
+ public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ // Finalize handling of large NBT data (if needed).
+ NoppesUtil.handleLargeData(null);
+ }
+}
diff --git a/src/main/java/kamkeel/network/packets/client/LargeNbtPartPacket.java b/src/main/java/kamkeel/network/packets/client/LargeNbtPartPacket.java
new file mode 100644
index 000000000..2c4813adf
--- /dev/null
+++ b/src/main/java/kamkeel/network/packets/client/LargeNbtPartPacket.java
@@ -0,0 +1,39 @@
+package kamkeel.network.packets.client;
+
+import io.netty.buffer.ByteBuf;
+import kamkeel.network.AbstractPacket;
+import kamkeel.network.PacketChannel;
+import kamkeel.network.PacketHandler;
+import kamkeel.network.enums.EnumClientPacket;
+import net.minecraft.entity.player.EntityPlayer;
+import noppes.npcs.NoppesUtil;
+
+import java.io.IOException;
+
+public final class LargeNBTPartPacket extends AbstractPacket {
+ public static final String packetName = "Client|LargeNBTPart";
+
+ public LargeNBTPartPacket() {}
+
+ @Override
+ public Enum getType() {
+ return EnumClientPacket.LARGE_NBT_PART;
+ }
+
+ @Override
+ public PacketChannel getChannel() {
+ return PacketHandler.CLIENT_PACKET;
+ }
+
+ @Override
+ public void sendData(ByteBuf out) throws IOException {
+ // TODO: Send Packet
+ }
+
+ @Override
+ public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ byte[] chunk = new byte[in.readShort()];
+ in.readBytes(chunk);
+ NoppesUtil.handleLargeData(chunk);
+ }
+}
diff --git a/src/main/java/kamkeel/network/packets/client/MarkDataPacket.java b/src/main/java/kamkeel/network/packets/client/MarkDataPacket.java
new file mode 100644
index 000000000..a6412982b
--- /dev/null
+++ b/src/main/java/kamkeel/network/packets/client/MarkDataPacket.java
@@ -0,0 +1,47 @@
+package kamkeel.network.packets.client;
+
+import io.netty.buffer.ByteBuf;
+import kamkeel.network.AbstractPacket;
+import kamkeel.network.PacketChannel;
+import kamkeel.network.PacketHandler;
+import kamkeel.network.enums.EnumClientPacket;
+import net.minecraft.entity.Entity;
+import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.nbt.NBTTagCompound;
+import noppes.npcs.Server;
+import noppes.npcs.controllers.data.MarkData;
+import noppes.npcs.entity.EntityNPCInterface;
+
+import java.io.IOException;
+
+public final class MarkDataPacket extends AbstractPacket {
+ public static final String packetName = "Client|MarkData";
+
+ public MarkDataPacket() {}
+
+ @Override
+ public Enum getType() {
+ return EnumClientPacket.MARK_DATA;
+ }
+
+ @Override
+ public PacketChannel getChannel() {
+ return PacketHandler.CLIENT_PACKET;
+ }
+
+ @Override
+ public void sendData(ByteBuf out) throws IOException {
+ // TODO: Send Packet
+ }
+
+ @Override
+ public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ Entity entity = player.worldObj.getEntityByID(in.readInt());
+ if (!(entity instanceof EntityNPCInterface)) return;
+
+ EntityNPCInterface npc = (EntityNPCInterface) entity;
+ NBTTagCompound nbt = Server.readNBT(in);
+ MarkData data = MarkData.get(npc);
+ data.setNBT(nbt);
+ }
+}
diff --git a/src/main/java/kamkeel/network/packets/client/MessagePacket.java b/src/main/java/kamkeel/network/packets/client/MessagePacket.java
new file mode 100644
index 000000000..97d05da72
--- /dev/null
+++ b/src/main/java/kamkeel/network/packets/client/MessagePacket.java
@@ -0,0 +1,53 @@
+package kamkeel.network.packets.client;
+
+import cpw.mods.fml.common.ObfuscationReflectionHelper;
+import cpw.mods.fml.relauncher.Side;
+import io.netty.buffer.ByteBuf;
+import kamkeel.network.AbstractPacket;
+import kamkeel.network.PacketChannel;
+import kamkeel.network.PacketHandler;
+import kamkeel.network.enums.EnumClientPacket;
+import net.minecraft.client.Minecraft;
+import net.minecraft.client.gui.achievement.GuiAchievement;
+import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.stats.Achievement;
+import net.minecraft.util.StatCollector;
+import noppes.npcs.CustomItems;
+import noppes.npcs.CustomNpcs;
+import noppes.npcs.Server;
+
+import java.io.IOException;
+
+public final class MessagePacket extends AbstractPacket {
+ public static final String packetName = "Client|Message";
+
+ public MessagePacket() {}
+
+ @Override
+ public Enum getType() {
+ return EnumClientPacket.MESSAGE;
+ }
+
+ @Override
+ public PacketChannel getChannel() {
+ return PacketHandler.CLIENT_PACKET;
+ }
+
+ @Override
+ public void sendData(ByteBuf out) throws IOException {
+ // TODO: Send Packet
+ }
+
+ @Override
+ public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ if(CustomNpcs.side() != Side.CLIENT)
+ return;
+
+ String description = StatCollector.translateToLocal(Server.readString(in));
+ String message = Server.readString(in);
+ Achievement achievement = new Achievement(message, description);
+ GuiAchievement guiAchievement = Minecraft.getMinecraft().guiAchievement;
+ guiAchievement.func_146256_a(achievement);
+ ObfuscationReflectionHelper.setPrivateValue(GuiAchievement.class, guiAchievement, achievement.getDescription(), 4);
+ }
+}
diff --git a/src/main/java/kamkeel/network/packets/client/OpenBookPacket.java b/src/main/java/kamkeel/network/packets/client/OpenBookPacket.java
new file mode 100644
index 000000000..7e1c613f4
--- /dev/null
+++ b/src/main/java/kamkeel/network/packets/client/OpenBookPacket.java
@@ -0,0 +1,46 @@
+package kamkeel.network.packets.client;
+
+import io.netty.buffer.ByteBuf;
+import kamkeel.network.AbstractPacket;
+import kamkeel.network.PacketChannel;
+import kamkeel.network.PacketHandler;
+import kamkeel.network.enums.EnumClientPacket;
+import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.item.ItemStack;
+import net.minecraft.nbt.NBTTagCompound;
+import noppes.npcs.Server;
+import noppes.npcs.client.gui.player.GuiBook;
+import noppes.npcs.NoppesUtil;
+
+import java.io.IOException;
+
+public final class OpenBookPacket extends AbstractPacket {
+ public static final String packetName = "Client|OpenBook";
+
+ public OpenBookPacket() {}
+
+ @Override
+ public Enum getType() {
+ return EnumClientPacket.OPEN_BOOK;
+ }
+
+ @Override
+ public PacketChannel getChannel() {
+ return PacketHandler.CLIENT_PACKET;
+ }
+
+ @Override
+ public void sendData(ByteBuf out) throws IOException {
+ // TODO: Send Packet
+ }
+
+ @Override
+ public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ int x = in.readInt();
+ int y = in.readInt();
+ int z = in.readInt();
+ NBTTagCompound nbt = Server.readNBT(in);
+ ItemStack book = ItemStack.loadItemStackFromNBT(nbt);
+ NoppesUtil.openGUI(player, new GuiBook(player, book, x, y, z));
+ }
+}
diff --git a/src/main/java/kamkeel/network/packets/client/OverlayQuestTrackingPacket.java b/src/main/java/kamkeel/network/packets/client/OverlayQuestTrackingPacket.java
new file mode 100644
index 000000000..487f163dc
--- /dev/null
+++ b/src/main/java/kamkeel/network/packets/client/OverlayQuestTrackingPacket.java
@@ -0,0 +1,47 @@
+package kamkeel.network.packets.client;
+
+import io.netty.buffer.ByteBuf;
+import kamkeel.network.AbstractPacket;
+import kamkeel.network.PacketChannel;
+import kamkeel.network.PacketHandler;
+import kamkeel.network.enums.EnumClientPacket;
+import net.minecraft.client.Minecraft;
+import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.nbt.NBTTagCompound;
+import noppes.npcs.Server;
+import noppes.npcs.client.gui.OverlayQuestTracking;
+import noppes.npcs.client.ClientCacheHandler;
+
+import java.io.IOException;
+
+public final class OverlayQuestTrackingPacket extends AbstractPacket {
+ public static final String packetName = "Client|OverlayQuestTracking";
+
+ public OverlayQuestTrackingPacket() {}
+
+ @Override
+ public Enum getType() {
+ return EnumClientPacket.OVERLAY_QUEST_TRACKING;
+ }
+
+ @Override
+ public PacketChannel getChannel() {
+ return PacketHandler.CLIENT_PACKET;
+ }
+
+ @Override
+ public void sendData(ByteBuf out) throws IOException {
+ // TODO: Send Packet
+ }
+
+ @Override
+ public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ try {
+ NBTTagCompound nbt = Server.readNBT(in);
+ ClientCacheHandler.questTrackingOverlay = new OverlayQuestTracking(Minecraft.getMinecraft());
+ ClientCacheHandler.questTrackingOverlay.setOverlayData(nbt);
+ } catch (IOException e) {
+ ClientCacheHandler.questTrackingOverlay = null;
+ }
+ }
+}
diff --git a/src/main/java/kamkeel/network/packets/client/ParticlePacket.java b/src/main/java/kamkeel/network/packets/client/ParticlePacket.java
new file mode 100644
index 000000000..ae7230ee4
--- /dev/null
+++ b/src/main/java/kamkeel/network/packets/client/ParticlePacket.java
@@ -0,0 +1,37 @@
+package kamkeel.network.packets.client;
+
+import io.netty.buffer.ByteBuf;
+import kamkeel.network.AbstractPacket;
+import kamkeel.network.PacketChannel;
+import kamkeel.network.PacketHandler;
+import kamkeel.network.enums.EnumClientPacket;
+import net.minecraft.entity.player.EntityPlayer;
+import noppes.npcs.client.NoppesUtil;
+
+import java.io.IOException;
+
+public final class ParticlePacket extends AbstractPacket {
+ public static final String packetName = "Client|Particle";
+
+ public ParticlePacket() {}
+
+ @Override
+ public Enum getType() {
+ return EnumClientPacket.PARTICLE;
+ }
+
+ @Override
+ public PacketChannel getChannel() {
+ return PacketHandler.CLIENT_PACKET;
+ }
+
+ @Override
+ public void sendData(ByteBuf out) throws IOException {
+ // TODO: Send Packet
+ }
+
+ @Override
+ public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ NoppesUtil.spawnParticle(in);
+ }
+}
diff --git a/src/main/java/kamkeel/network/packets/client/PartyDataPacket.java b/src/main/java/kamkeel/network/packets/client/PartyDataPacket.java
new file mode 100644
index 000000000..95b2f68eb
--- /dev/null
+++ b/src/main/java/kamkeel/network/packets/client/PartyDataPacket.java
@@ -0,0 +1,52 @@
+package kamkeel.network.packets.client;
+
+import io.netty.buffer.ByteBuf;
+import kamkeel.network.AbstractPacket;
+import kamkeel.network.PacketChannel;
+import kamkeel.network.PacketHandler;
+import kamkeel.network.enums.EnumClientPacket;
+import net.minecraft.client.Minecraft;
+import net.minecraft.client.gui.GuiScreen;
+import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.nbt.NBTTagCompound;
+import noppes.npcs.Server;
+import noppes.npcs.client.gui.util.GuiContainerNPCInterface;
+import noppes.npcs.client.gui.util.GuiNPCInterface;
+import noppes.npcs.client.gui.util.IPartyData;
+
+import java.io.IOException;
+
+public final class PartyDataPacket extends AbstractPacket {
+ public static final String packetName = "Client|PartyData";
+
+ public PartyDataPacket() {}
+
+ @Override
+ public Enum getType() {
+ return EnumClientPacket.PARTY_DATA;
+ }
+
+ @Override
+ public PacketChannel getChannel() {
+ return PacketHandler.CLIENT_PACKET;
+ }
+
+ @Override
+ public void sendData(ByteBuf out) throws IOException {
+ // TODO: Send Packet
+ }
+
+ @Override
+ public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ GuiScreen gui = Minecraft.getMinecraft().currentScreen;
+ if (gui instanceof GuiNPCInterface && ((GuiNPCInterface) gui).hasSubGui()) {
+ gui = (GuiScreen) ((GuiNPCInterface) gui).getSubGui();
+ } else if (gui instanceof GuiContainerNPCInterface && ((GuiContainerNPCInterface) gui).hasSubGui()) {
+ gui = (GuiScreen) ((GuiContainerNPCInterface) gui).getSubGui();
+ }
+ if (gui instanceof IPartyData) {
+ NBTTagCompound nbt = Server.readNBT(in);
+ ((IPartyData) gui).setPartyData(nbt);
+ }
+ }
+}
diff --git a/src/main/java/kamkeel/network/packets/client/PauseSoundsPacket.java b/src/main/java/kamkeel/network/packets/client/PauseSoundsPacket.java
new file mode 100644
index 000000000..8693a67f2
--- /dev/null
+++ b/src/main/java/kamkeel/network/packets/client/PauseSoundsPacket.java
@@ -0,0 +1,37 @@
+package kamkeel.network.packets.client;
+
+import io.netty.buffer.ByteBuf;
+import kamkeel.network.AbstractPacket;
+import kamkeel.network.PacketChannel;
+import kamkeel.network.PacketHandler;
+import kamkeel.network.enums.EnumClientPacket;
+import net.minecraft.entity.player.EntityPlayer;
+import noppes.npcs.client.controllers.ScriptSoundController;
+
+import java.io.IOException;
+
+public final class PauseSoundsPacket extends AbstractPacket {
+ public static final String packetName = "Client|PauseSounds";
+
+ public PauseSoundsPacket() {}
+
+ @Override
+ public Enum getType() {
+ return EnumClientPacket.PAUSE_SOUNDS;
+ }
+
+ @Override
+ public PacketChannel getChannel() {
+ return PacketHandler.CLIENT_PACKET;
+ }
+
+ @Override
+ public void sendData(ByteBuf out) throws IOException {
+ // TODO: Send Packet
+ }
+
+ @Override
+ public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ ScriptSoundController.Instance.pauseAllSounds();
+ }
+}
diff --git a/src/main/java/kamkeel/network/packets/client/PlayMusicPacket.java b/src/main/java/kamkeel/network/packets/client/PlayMusicPacket.java
new file mode 100644
index 000000000..c12770bc0
--- /dev/null
+++ b/src/main/java/kamkeel/network/packets/client/PlayMusicPacket.java
@@ -0,0 +1,39 @@
+package kamkeel.network.packets.client;
+
+import io.netty.buffer.ByteBuf;
+import kamkeel.network.AbstractPacket;
+import kamkeel.network.PacketChannel;
+import kamkeel.network.PacketHandler;
+import kamkeel.network.enums.EnumClientPacket;
+import net.minecraft.entity.player.EntityPlayer;
+import noppes.npcs.Server;
+import noppes.npcs.client.controllers.MusicController;
+
+import java.io.IOException;
+
+public final class PlayMusicPacket extends AbstractPacket {
+ public static final String packetName = "Client|PlayMusic";
+
+ public PlayMusicPacket() {}
+
+ @Override
+ public Enum getType() {
+ return EnumClientPacket.PLAY_MUSIC;
+ }
+
+ @Override
+ public PacketChannel getChannel() {
+ return PacketHandler.CLIENT_PACKET;
+ }
+
+ @Override
+ public void sendData(ByteBuf out) throws IOException {
+ // TODO: Send Packet
+ }
+
+ @Override
+ public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ String musicName = Server.readString(in);
+ MusicController.Instance.playMusicBackground(musicName, player, Integer.MAX_VALUE);
+ }
+}
diff --git a/src/main/java/kamkeel/network/packets/client/PlaySoundPacket.java b/src/main/java/kamkeel/network/packets/client/PlaySoundPacket.java
new file mode 100644
index 000000000..7f2996508
--- /dev/null
+++ b/src/main/java/kamkeel/network/packets/client/PlaySoundPacket.java
@@ -0,0 +1,42 @@
+package kamkeel.network.packets.client;
+
+import io.netty.buffer.ByteBuf;
+import kamkeel.network.AbstractPacket;
+import kamkeel.network.PacketChannel;
+import kamkeel.network.PacketHandler;
+import kamkeel.network.enums.EnumClientPacket;
+import net.minecraft.entity.player.EntityPlayer;
+import noppes.npcs.Server;
+import noppes.npcs.client.controllers.MusicController;
+
+import java.io.IOException;
+
+public final class PlaySoundPacket extends AbstractPacket {
+ public static final String packetName = "Client|PlaySound";
+
+ public PlaySoundPacket() {}
+
+ @Override
+ public Enum getType() {
+ return EnumClientPacket.PLAY_SOUND;
+ }
+
+ @Override
+ public PacketChannel getChannel() {
+ return PacketHandler.CLIENT_PACKET;
+ }
+
+ @Override
+ public void sendData(ByteBuf out) throws IOException {
+ // TODO: Send Packet
+ }
+
+ @Override
+ public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ String soundName = Server.readString(in);
+ float x = in.readFloat();
+ float y = in.readFloat();
+ float z = in.readFloat();
+ MusicController.Instance.playSound(soundName, x, y, z);
+ }
+}
diff --git a/src/main/java/kamkeel/network/packets/client/PlaySoundToNoIdPacket.java b/src/main/java/kamkeel/network/packets/client/PlaySoundToNoIdPacket.java
new file mode 100644
index 000000000..00b052338
--- /dev/null
+++ b/src/main/java/kamkeel/network/packets/client/PlaySoundToNoIdPacket.java
@@ -0,0 +1,42 @@
+package kamkeel.network.packets.client;
+
+import io.netty.buffer.ByteBuf;
+import kamkeel.network.AbstractPacket;
+import kamkeel.network.PacketChannel;
+import kamkeel.network.PacketHandler;
+import kamkeel.network.enums.EnumClientPacket;
+import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.nbt.NBTTagCompound;
+import noppes.npcs.Server;
+import noppes.npcs.client.controllers.ScriptClientSound;
+import noppes.npcs.client.controllers.ScriptSoundController;
+
+import java.io.IOException;
+
+public final class PlaySoundToNoIdPacket extends AbstractPacket {
+ public static final String packetName = "Client|PlaySoundToNoId";
+
+ public PlaySoundToNoIdPacket() {}
+
+ @Override
+ public Enum getType() {
+ return EnumClientPacket.PLAY_SOUND_TO_NO_ID;
+ }
+
+ @Override
+ public PacketChannel getChannel() {
+ return PacketHandler.CLIENT_PACKET;
+ }
+
+ @Override
+ public void sendData(ByteBuf out) throws IOException {
+ // TODO: Send Packet
+ }
+
+ @Override
+ public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ NBTTagCompound nbt = Server.readNBT(in);
+ ScriptClientSound sound = ScriptClientSound.fromScriptSound(nbt, player.worldObj);
+ ScriptSoundController.Instance.playSound(sound);
+ }
+}
diff --git a/src/main/java/kamkeel/network/packets/client/PlaySoundToPacket.java b/src/main/java/kamkeel/network/packets/client/PlaySoundToPacket.java
new file mode 100644
index 000000000..da0baead2
--- /dev/null
+++ b/src/main/java/kamkeel/network/packets/client/PlaySoundToPacket.java
@@ -0,0 +1,43 @@
+package kamkeel.network.packets.client;
+
+import io.netty.buffer.ByteBuf;
+import kamkeel.network.AbstractPacket;
+import kamkeel.network.PacketChannel;
+import kamkeel.network.PacketHandler;
+import kamkeel.network.enums.EnumClientPacket;
+import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.nbt.NBTTagCompound;
+import noppes.npcs.Server;
+import noppes.npcs.client.controllers.ScriptClientSound;
+import noppes.npcs.client.controllers.ScriptSoundController;
+
+import java.io.IOException;
+
+public final class PlaySoundToPacket extends AbstractPacket {
+ public static final String packetName = "Client|PlaySoundTo";
+
+ public PlaySoundToPacket() {}
+
+ @Override
+ public Enum getType() {
+ return EnumClientPacket.PLAY_SOUND_TO;
+ }
+
+ @Override
+ public PacketChannel getChannel() {
+ return PacketHandler.CLIENT_PACKET;
+ }
+
+ @Override
+ public void sendData(ByteBuf out) throws IOException {
+ // TODO: Send Packet
+ }
+
+ @Override
+ public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ int soundId = in.readInt();
+ NBTTagCompound nbt = Server.readNBT(in);
+ ScriptClientSound sound = ScriptClientSound.fromScriptSound(nbt, player.worldObj);
+ ScriptSoundController.Instance.playSound(soundId, sound);
+ }
+}
diff --git a/src/main/java/kamkeel/network/packets/client/PlayerUpdateSkinOverlaysPacket.java b/src/main/java/kamkeel/network/packets/client/PlayerUpdateSkinOverlaysPacket.java
new file mode 100644
index 000000000..8bb3f6e11
--- /dev/null
+++ b/src/main/java/kamkeel/network/packets/client/PlayerUpdateSkinOverlaysPacket.java
@@ -0,0 +1,45 @@
+package kamkeel.network.packets.client;
+
+import io.netty.buffer.ByteBuf;
+import kamkeel.network.AbstractPacket;
+import kamkeel.network.PacketChannel;
+import kamkeel.network.PacketHandler;
+import kamkeel.network.enums.EnumClientPacket;
+import net.minecraft.client.Minecraft;
+import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.nbt.NBTTagCompound;
+import noppes.npcs.Server;
+import noppes.npcs.NoppesUtil;
+
+import java.io.IOException;
+
+public final class PlayerUpdateSkinOverlaysPacket extends AbstractPacket {
+ public static final String packetName = "Client|PlayerUpdateSkinOverlays";
+
+ public PlayerUpdateSkinOverlaysPacket() {}
+
+ @Override
+ public Enum getType() {
+ return EnumClientPacket.PLAYER_UPDATE_SKIN_OVERLAYS;
+ }
+
+ @Override
+ public PacketChannel getChannel() {
+ return PacketHandler.CLIENT_PACKET;
+ }
+
+ @Override
+ public void sendData(ByteBuf out) throws IOException {
+ // TODO: Send Packet
+ }
+
+ @Override
+ public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ String playerName = Server.readString(in);
+ NBTTagCompound nbt = Server.readNBT(in);
+ EntityPlayer sendingPlayer = Minecraft.getMinecraft().theWorld.getPlayerEntityByName(playerName);
+ if (sendingPlayer != null) {
+ NoppesUtil.updateSkinOverlayData(sendingPlayer, nbt);
+ }
+ }
+}
diff --git a/src/main/java/kamkeel/network/packets/client/QuestCompletionPacket.java b/src/main/java/kamkeel/network/packets/client/QuestCompletionPacket.java
new file mode 100644
index 000000000..e395facec
--- /dev/null
+++ b/src/main/java/kamkeel/network/packets/client/QuestCompletionPacket.java
@@ -0,0 +1,38 @@
+package kamkeel.network.packets.client;
+
+import io.netty.buffer.ByteBuf;
+import kamkeel.network.AbstractPacket;
+import kamkeel.network.PacketChannel;
+import kamkeel.network.PacketHandler;
+import kamkeel.network.enums.EnumClientPacket;
+import net.minecraft.entity.player.EntityPlayer;
+import noppes.npcs.Server;
+import noppes.npcs.client.NoppesUtil;
+
+import java.io.IOException;
+
+public final class QuestCompletionPacket extends AbstractPacket {
+ public static final String packetName = "Client|QuestCompletion";
+
+ public QuestCompletionPacket() {}
+
+ @Override
+ public Enum getType() {
+ return EnumClientPacket.QUEST_COMPLETION;
+ }
+
+ @Override
+ public PacketChannel getChannel() {
+ return PacketHandler.CLIENT_PACKET;
+ }
+
+ @Override
+ public void sendData(ByteBuf out) throws IOException {
+ // TODO: Send Packet
+ }
+
+ @Override
+ public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ NoppesUtil.guiQuestCompletion(player, Server.readNBT(in));
+ }
+}
diff --git a/src/main/java/kamkeel/network/packets/client/RolePacket.java b/src/main/java/kamkeel/network/packets/client/RolePacket.java
new file mode 100644
index 000000000..431cd25c8
--- /dev/null
+++ b/src/main/java/kamkeel/network/packets/client/RolePacket.java
@@ -0,0 +1,49 @@
+package kamkeel.network.packets.client;
+
+import io.netty.buffer.ByteBuf;
+import kamkeel.network.AbstractPacket;
+import kamkeel.network.PacketChannel;
+import kamkeel.network.PacketHandler;
+import kamkeel.network.enums.EnumClientPacket;
+import net.minecraft.client.Minecraft;
+import net.minecraft.entity.Entity;
+import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.nbt.NBTTagCompound;
+import noppes.npcs.Server;
+import noppes.npcs.NoppesUtil;
+import noppes.npcs.entity.EntityNPCInterface;
+
+import java.io.IOException;
+
+public final class RolePacket extends AbstractPacket {
+ public static final String packetName = "Client|Role";
+
+ public RolePacket() {}
+
+ @Override
+ public Enum getType() {
+ return EnumClientPacket.ROLE;
+ }
+
+ @Override
+ public PacketChannel getChannel() {
+ return PacketHandler.CLIENT_PACKET;
+ }
+
+ @Override
+ public void sendData(ByteBuf out) throws IOException {
+ // TODO: Send Packet
+ }
+
+ @Override
+ public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ NBTTagCompound compound = Server.readNBT(in);
+ Entity entity = Minecraft.getMinecraft().theWorld.getEntityByID(compound.getInteger("EntityId"));
+ if (entity instanceof EntityNPCInterface) {
+ EntityNPCInterface npc = (EntityNPCInterface) entity;
+ npc.advanced.setRole(compound.getInteger("Role"));
+ npc.roleInterface.readFromNBT(compound);
+ NoppesUtil.setLastNpc(npc);
+ }
+ }
+}
diff --git a/src/main/java/kamkeel/network/packets/client/ScriptOverlayClosePacket.java b/src/main/java/kamkeel/network/packets/client/ScriptOverlayClosePacket.java
new file mode 100644
index 000000000..f40193ceb
--- /dev/null
+++ b/src/main/java/kamkeel/network/packets/client/ScriptOverlayClosePacket.java
@@ -0,0 +1,38 @@
+package kamkeel.network.packets.client;
+
+import io.netty.buffer.ByteBuf;
+import kamkeel.network.AbstractPacket;
+import kamkeel.network.PacketChannel;
+import kamkeel.network.PacketHandler;
+import kamkeel.network.enums.EnumClientPacket;
+import net.minecraft.entity.player.EntityPlayer;
+import noppes.npcs.client.ClientCacheHandler;
+
+import java.io.IOException;
+
+public final class ScriptOverlayClosePacket extends AbstractPacket {
+ public static final String packetName = "Client|ScriptOverlayClose";
+
+ public ScriptOverlayClosePacket() {}
+
+ @Override
+ public Enum getType() {
+ return EnumClientPacket.SCRIPT_OVERLAY_CLOSE;
+ }
+
+ @Override
+ public PacketChannel getChannel() {
+ return PacketHandler.CLIENT_PACKET;
+ }
+
+ @Override
+ public void sendData(ByteBuf out) throws IOException {
+ // TODO: Send Packet
+ }
+
+ @Override
+ public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ int overlayId = in.readInt();
+ ClientCacheHandler.customOverlays.remove(overlayId);
+ }
+}
diff --git a/src/main/java/kamkeel/network/packets/client/ScriptOverlayDataPacket.java b/src/main/java/kamkeel/network/packets/client/ScriptOverlayDataPacket.java
new file mode 100644
index 000000000..9952be1f9
--- /dev/null
+++ b/src/main/java/kamkeel/network/packets/client/ScriptOverlayDataPacket.java
@@ -0,0 +1,42 @@
+package kamkeel.network.packets.client;
+
+import io.netty.buffer.ByteBuf;
+import kamkeel.network.AbstractPacket;
+import kamkeel.network.PacketChannel;
+import kamkeel.network.PacketHandler;
+import kamkeel.network.enums.EnumClientPacket;
+import net.minecraft.client.Minecraft;
+import net.minecraft.entity.player.EntityPlayer;
+import noppes.npcs.Server;
+import noppes.npcs.client.gui.customoverlay.OverlayCustom;
+import noppes.npcs.client.ClientCacheHandler;
+
+import java.io.IOException;
+
+public final class ScriptOverlayDataPacket extends AbstractPacket {
+ public static final String packetName = "Client|ScriptOverlayData";
+
+ public ScriptOverlayDataPacket() {}
+
+ @Override
+ public Enum getType() {
+ return EnumClientPacket.SCRIPT_OVERLAY_DATA;
+ }
+
+ @Override
+ public PacketChannel getChannel() {
+ return PacketHandler.CLIENT_PACKET;
+ }
+
+ @Override
+ public void sendData(ByteBuf out) throws IOException {
+ // TODO: Send Packet
+ }
+
+ @Override
+ public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ OverlayCustom overlayCustom = new OverlayCustom(Minecraft.getMinecraft());
+ overlayCustom.setOverlayData(Server.readNBT(in));
+ ClientCacheHandler.customOverlays.put(overlayCustom.overlay.getID(), overlayCustom);
+ }
+}
diff --git a/src/main/java/kamkeel/network/packets/client/ScriptedParticlePacket.java b/src/main/java/kamkeel/network/packets/client/ScriptedParticlePacket.java
new file mode 100644
index 000000000..ea8150148
--- /dev/null
+++ b/src/main/java/kamkeel/network/packets/client/ScriptedParticlePacket.java
@@ -0,0 +1,37 @@
+package kamkeel.network.packets.client;
+
+import io.netty.buffer.ByteBuf;
+import kamkeel.network.AbstractPacket;
+import kamkeel.network.PacketChannel;
+import kamkeel.network.PacketHandler;
+import kamkeel.network.enums.EnumClientPacket;
+import net.minecraft.entity.player.EntityPlayer;
+import noppes.npcs.client.NoppesUtil;
+
+import java.io.IOException;
+
+public final class ScriptedParticlePacket extends AbstractPacket {
+ public static final String packetName = "Client|ScriptedParticle";
+
+ public ScriptedParticlePacket() {}
+
+ @Override
+ public Enum getType() {
+ return EnumClientPacket.SCRIPTED_PARTICLE;
+ }
+
+ @Override
+ public PacketChannel getChannel() {
+ return PacketHandler.CLIENT_PACKET;
+ }
+
+ @Override
+ public void sendData(ByteBuf out) throws IOException {
+ // TODO: Send Packet
+ }
+
+ @Override
+ public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ NoppesUtil.spawnScriptedParticle(player, in);
+ }
+}
diff --git a/src/main/java/kamkeel/network/packets/client/ScrollDataPacket.java b/src/main/java/kamkeel/network/packets/client/ScrollDataPacket.java
new file mode 100644
index 000000000..412c86daf
--- /dev/null
+++ b/src/main/java/kamkeel/network/packets/client/ScrollDataPacket.java
@@ -0,0 +1,37 @@
+package kamkeel.network.packets.client;
+
+import io.netty.buffer.ByteBuf;
+import kamkeel.network.AbstractPacket;
+import kamkeel.network.PacketChannel;
+import kamkeel.network.PacketHandler;
+import kamkeel.network.enums.EnumClientPacket;
+import net.minecraft.entity.player.EntityPlayer;
+import noppes.npcs.NoppesUtil;
+
+import java.io.IOException;
+
+public final class ScrollDataPacket extends AbstractPacket {
+ public static final String packetName = "Client|ScrollData";
+
+ public ScrollDataPacket() {}
+
+ @Override
+ public Enum getType() {
+ return EnumClientPacket.SCROLL_DATA;
+ }
+
+ @Override
+ public PacketChannel getChannel() {
+ return PacketHandler.CLIENT_PACKET;
+ }
+
+ @Override
+ public void sendData(ByteBuf out) throws IOException {
+ // TODO: Send Packet
+ }
+
+ @Override
+ public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ NoppesUtil.setScrollData(in);
+ }
+}
diff --git a/src/main/java/kamkeel/network/packets/client/ScrollDataPartPacket.java b/src/main/java/kamkeel/network/packets/client/ScrollDataPartPacket.java
new file mode 100644
index 000000000..29c3d611a
--- /dev/null
+++ b/src/main/java/kamkeel/network/packets/client/ScrollDataPartPacket.java
@@ -0,0 +1,37 @@
+package kamkeel.network.packets.client;
+
+import io.netty.buffer.ByteBuf;
+import kamkeel.network.AbstractPacket;
+import kamkeel.network.PacketChannel;
+import kamkeel.network.PacketHandler;
+import kamkeel.network.enums.EnumClientPacket;
+import net.minecraft.entity.player.EntityPlayer;
+import noppes.npcs.NoppesUtil;
+
+import java.io.IOException;
+
+public final class ScrollDataPartPacket extends AbstractPacket {
+ public static final String packetName = "Client|ScrollDataPart";
+
+ public ScrollDataPartPacket() {}
+
+ @Override
+ public Enum getType() {
+ return EnumClientPacket.SCROLL_DATA_PART;
+ }
+
+ @Override
+ public PacketChannel getChannel() {
+ return PacketHandler.CLIENT_PACKET;
+ }
+
+ @Override
+ public void sendData(ByteBuf out) throws IOException {
+ // TODO: Send Packet
+ }
+
+ @Override
+ public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ NoppesUtil.addScrollData(in);
+ }
+}
diff --git a/src/main/java/kamkeel/network/packets/client/ScrollGroupPacket.java b/src/main/java/kamkeel/network/packets/client/ScrollGroupPacket.java
new file mode 100644
index 000000000..60c770a3e
--- /dev/null
+++ b/src/main/java/kamkeel/network/packets/client/ScrollGroupPacket.java
@@ -0,0 +1,37 @@
+package kamkeel.network.packets.client;
+
+import io.netty.buffer.ByteBuf;
+import kamkeel.network.AbstractPacket;
+import kamkeel.network.PacketChannel;
+import kamkeel.network.PacketHandler;
+import kamkeel.network.enums.EnumClientPacket;
+import net.minecraft.entity.player.EntityPlayer;
+import noppes.npcs.NoppesUtil;
+
+import java.io.IOException;
+
+public final class ScrollGroupPacket extends AbstractPacket {
+ public static final String packetName = "Client|ScrollGroup";
+
+ public ScrollGroupPacket() {}
+
+ @Override
+ public Enum getType() {
+ return EnumClientPacket.SCROLL_GROUP;
+ }
+
+ @Override
+ public PacketChannel getChannel() {
+ return PacketHandler.CLIENT_PACKET;
+ }
+
+ @Override
+ public void sendData(ByteBuf out) throws IOException {
+ // TODO: Send Packet
+ }
+
+ @Override
+ public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ NoppesUtil.setScrollGroup(in);
+ }
+}
diff --git a/src/main/java/kamkeel/network/packets/client/ScrollGroupPartPacket.java b/src/main/java/kamkeel/network/packets/client/ScrollGroupPartPacket.java
new file mode 100644
index 000000000..16bcabd76
--- /dev/null
+++ b/src/main/java/kamkeel/network/packets/client/ScrollGroupPartPacket.java
@@ -0,0 +1,37 @@
+package kamkeel.network.packets.client;
+
+import io.netty.buffer.ByteBuf;
+import kamkeel.network.AbstractPacket;
+import kamkeel.network.PacketChannel;
+import kamkeel.network.PacketHandler;
+import kamkeel.network.enums.EnumClientPacket;
+import net.minecraft.entity.player.EntityPlayer;
+import noppes.npcs.NoppesUtil;
+
+import java.io.IOException;
+
+public final class ScrollGroupPartPacket extends AbstractPacket {
+ public static final String packetName = "Client|ScrollGroupPart";
+
+ public ScrollGroupPartPacket() {}
+
+ @Override
+ public Enum getType() {
+ return EnumClientPacket.SCROLL_GROUP_PART;
+ }
+
+ @Override
+ public PacketChannel getChannel() {
+ return PacketHandler.CLIENT_PACKET;
+ }
+
+ @Override
+ public void sendData(ByteBuf out) throws IOException {
+ // TODO: Send Packet
+ }
+
+ @Override
+ public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ NoppesUtil.addScrollGroup(in);
+ }
+}
diff --git a/src/main/java/kamkeel/network/packets/client/ScrollListPacket.java b/src/main/java/kamkeel/network/packets/client/ScrollListPacket.java
new file mode 100644
index 000000000..531899ac4
--- /dev/null
+++ b/src/main/java/kamkeel/network/packets/client/ScrollListPacket.java
@@ -0,0 +1,37 @@
+package kamkeel.network.packets.client;
+
+import io.netty.buffer.ByteBuf;
+import kamkeel.network.AbstractPacket;
+import kamkeel.network.PacketChannel;
+import kamkeel.network.PacketHandler;
+import kamkeel.network.enums.EnumClientPacket;
+import net.minecraft.entity.player.EntityPlayer;
+import noppes.npcs.client.NoppesUtil;
+
+import java.io.IOException;
+
+public final class ScrollListPacket extends AbstractPacket {
+ public static final String packetName = "Client|ScrollList";
+
+ public ScrollListPacket() {}
+
+ @Override
+ public Enum getType() {
+ return EnumClientPacket.SCROLL_LIST;
+ }
+
+ @Override
+ public PacketChannel getChannel() {
+ return PacketHandler.CLIENT_PACKET;
+ }
+
+ @Override
+ public void sendData(ByteBuf out) throws IOException {
+ // TODO: Send Packet
+ }
+
+ @Override
+ public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ NoppesUtil.setScrollList(in);
+ }
+}
diff --git a/src/main/java/kamkeel/network/packets/client/ScrollSelectedPacket.java b/src/main/java/kamkeel/network/packets/client/ScrollSelectedPacket.java
new file mode 100644
index 000000000..7de8e9fed
--- /dev/null
+++ b/src/main/java/kamkeel/network/packets/client/ScrollSelectedPacket.java
@@ -0,0 +1,44 @@
+package kamkeel.network.packets.client;
+
+import io.netty.buffer.ByteBuf;
+import kamkeel.network.AbstractPacket;
+import kamkeel.network.PacketChannel;
+import kamkeel.network.PacketHandler;
+import kamkeel.network.enums.EnumClientPacket;
+import net.minecraft.client.Minecraft;
+import net.minecraft.client.gui.GuiScreen;
+import net.minecraft.entity.player.EntityPlayer;
+import noppes.npcs.Server;
+import noppes.npcs.client.gui.util.IScrollData;
+
+import java.io.IOException;
+
+public final class ScrollSelectedPacket extends AbstractPacket {
+ public static final String packetName = "Client|ScrollSelected";
+
+ public ScrollSelectedPacket() {}
+
+ @Override
+ public Enum getType() {
+ return EnumClientPacket.SCROLL_SELECTED;
+ }
+
+ @Override
+ public PacketChannel getChannel() {
+ return PacketHandler.CLIENT_PACKET;
+ }
+
+ @Override
+ public void sendData(ByteBuf out) throws IOException {
+ // TODO: Send Packet
+ }
+
+ @Override
+ public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ GuiScreen gui = Minecraft.getMinecraft().currentScreen;
+ if (gui instanceof IScrollData) {
+ String selected = Server.readString(in);
+ ((IScrollData) gui).setSelected(selected);
+ }
+ }
+}
diff --git a/src/main/java/kamkeel/network/packets/client/StopSoundForPacket.java b/src/main/java/kamkeel/network/packets/client/StopSoundForPacket.java
new file mode 100644
index 000000000..ec066645b
--- /dev/null
+++ b/src/main/java/kamkeel/network/packets/client/StopSoundForPacket.java
@@ -0,0 +1,38 @@
+package kamkeel.network.packets.client;
+
+import io.netty.buffer.ByteBuf;
+import kamkeel.network.AbstractPacket;
+import kamkeel.network.PacketChannel;
+import kamkeel.network.PacketHandler;
+import kamkeel.network.enums.EnumClientPacket;
+import net.minecraft.entity.player.EntityPlayer;
+import noppes.npcs.client.controllers.ScriptSoundController;
+
+import java.io.IOException;
+
+public final class StopSoundForPacket extends AbstractPacket {
+ public static final String packetName = "Client|StopSoundFor";
+
+ public StopSoundForPacket() {}
+
+ @Override
+ public Enum getType() {
+ return EnumClientPacket.STOP_SOUND_FOR;
+ }
+
+ @Override
+ public PacketChannel getChannel() {
+ return PacketHandler.CLIENT_PACKET;
+ }
+
+ @Override
+ public void sendData(ByteBuf out) throws IOException {
+ // TODO: Send Packet
+ }
+
+ @Override
+ public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ int soundId = in.readInt();
+ ScriptSoundController.Instance.stopSound(soundId);
+ }
+}
diff --git a/src/main/java/kamkeel/network/packets/client/StopSoundsPacket.java b/src/main/java/kamkeel/network/packets/client/StopSoundsPacket.java
new file mode 100644
index 000000000..14db7f7cc
--- /dev/null
+++ b/src/main/java/kamkeel/network/packets/client/StopSoundsPacket.java
@@ -0,0 +1,37 @@
+package kamkeel.network.packets.client;
+
+import io.netty.buffer.ByteBuf;
+import kamkeel.network.AbstractPacket;
+import kamkeel.network.PacketChannel;
+import kamkeel.network.PacketHandler;
+import kamkeel.network.enums.EnumClientPacket;
+import net.minecraft.entity.player.EntityPlayer;
+import noppes.npcs.client.controllers.ScriptSoundController;
+
+import java.io.IOException;
+
+public final class StopSoundsPacket extends AbstractPacket {
+ public static final String packetName = "Client|StopSounds";
+
+ public StopSoundsPacket() {}
+
+ @Override
+ public Enum getType() {
+ return EnumClientPacket.STOP_SOUNDS;
+ }
+
+ @Override
+ public PacketChannel getChannel() {
+ return PacketHandler.CLIENT_PACKET;
+ }
+
+ @Override
+ public void sendData(ByteBuf out) throws IOException {
+ // TODO: Send Packet
+ }
+
+ @Override
+ public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ ScriptSoundController.Instance.stopAllSounds();
+ }
+}
diff --git a/src/main/java/kamkeel/network/packets/client/SwingPlayerArmPacket.java b/src/main/java/kamkeel/network/packets/client/SwingPlayerArmPacket.java
new file mode 100644
index 000000000..6ca1511b4
--- /dev/null
+++ b/src/main/java/kamkeel/network/packets/client/SwingPlayerArmPacket.java
@@ -0,0 +1,37 @@
+package kamkeel.network.packets.client;
+
+import io.netty.buffer.ByteBuf;
+import kamkeel.network.AbstractPacket;
+import kamkeel.network.PacketChannel;
+import kamkeel.network.PacketHandler;
+import kamkeel.network.enums.EnumClientPacket;
+import net.minecraft.client.Minecraft;
+import net.minecraft.entity.player.EntityPlayer;
+
+import java.io.IOException;
+
+public final class SwingPlayerArmPacket extends AbstractPacket {
+ public static final String packetName = "Client|SwingPlayerArm";
+
+ public SwingPlayerArmPacket() {}
+
+ @Override
+ public Enum getType() {
+ return EnumClientPacket.SWING_PLAYER_ARM;
+ }
+
+ @Override
+ public PacketChannel getChannel() {
+ return PacketHandler.CLIENT_PACKET;
+ }
+
+ @Override
+ public void sendData(ByteBuf out) throws IOException {
+ // TODO: Send Packet
+ }
+
+ @Override
+ public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ Minecraft.getMinecraft().thePlayer.swingItem();
+ }
+}
diff --git a/src/main/java/kamkeel/network/packets/client/SyncAddPacket.java b/src/main/java/kamkeel/network/packets/client/SyncAddPacket.java
new file mode 100644
index 000000000..beb107093
--- /dev/null
+++ b/src/main/java/kamkeel/network/packets/client/SyncAddPacket.java
@@ -0,0 +1,41 @@
+package kamkeel.network.packets.client;
+
+import io.netty.buffer.ByteBuf;
+import kamkeel.network.AbstractPacket;
+import kamkeel.network.PacketChannel;
+import kamkeel.network.PacketHandler;
+import kamkeel.network.enums.EnumClientPacket;
+import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.nbt.NBTTagCompound;
+import noppes.npcs.Server;
+import noppes.npcs.controllers.SyncController;
+
+import java.io.IOException;
+
+public final class SyncAddPacket extends AbstractPacket {
+ public static final String packetName = "Client|SyncAdd";
+
+ public SyncAddPacket() {}
+
+ @Override
+ public Enum getType() {
+ return EnumClientPacket.SYNC_ADD;
+ }
+
+ @Override
+ public PacketChannel getChannel() {
+ return PacketHandler.CLIENT_PACKET;
+ }
+
+ @Override
+ public void sendData(ByteBuf out) throws IOException {
+ // TODO: Send Packet
+ }
+
+ @Override
+ public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ int synctype = in.readInt();
+ NBTTagCompound compound = Server.readNBT(in);
+ SyncController.clientSync(synctype, compound, false);
+ }
+}
diff --git a/src/main/java/kamkeel/network/packets/client/SyncConfigPacket.java b/src/main/java/kamkeel/network/packets/client/SyncConfigPacket.java
new file mode 100644
index 000000000..b621b36bd
--- /dev/null
+++ b/src/main/java/kamkeel/network/packets/client/SyncConfigPacket.java
@@ -0,0 +1,40 @@
+package kamkeel.network.packets.client;
+
+import io.netty.buffer.ByteBuf;
+import kamkeel.network.AbstractPacket;
+import kamkeel.network.PacketChannel;
+import kamkeel.network.PacketHandler;
+import kamkeel.network.enums.EnumClientPacket;
+import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.nbt.NBTTagCompound;
+import noppes.npcs.Server;
+import noppes.npcs.controllers.SyncController;
+
+import java.io.IOException;
+
+public final class SyncConfigPacket extends AbstractPacket {
+ public static final String packetName = "Client|SyncConfig";
+
+ public SyncConfigPacket() {}
+
+ @Override
+ public Enum getType() {
+ return EnumClientPacket.SYNC_CONFIG;
+ }
+
+ @Override
+ public PacketChannel getChannel() {
+ return PacketHandler.CLIENT_PACKET;
+ }
+
+ @Override
+ public void sendData(ByteBuf out) throws IOException {
+ // TODO: Send Packet
+ }
+
+ @Override
+ public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ NBTTagCompound configNBT = Server.readNBT(in);
+ SyncController.receiveConfigs(configNBT);
+ }
+}
diff --git a/src/main/java/kamkeel/network/packets/client/SyncEndPacket.java b/src/main/java/kamkeel/network/packets/client/SyncEndPacket.java
new file mode 100644
index 000000000..6e6f6a27f
--- /dev/null
+++ b/src/main/java/kamkeel/network/packets/client/SyncEndPacket.java
@@ -0,0 +1,41 @@
+package kamkeel.network.packets.client;
+
+import io.netty.buffer.ByteBuf;
+import kamkeel.network.AbstractPacket;
+import kamkeel.network.PacketChannel;
+import kamkeel.network.PacketHandler;
+import kamkeel.network.enums.EnumClientPacket;
+import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.nbt.NBTTagCompound;
+import noppes.npcs.Server;
+import noppes.npcs.controllers.SyncController;
+
+import java.io.IOException;
+
+public final class SyncEndPacket extends AbstractPacket {
+ public static final String packetName = "Client|SyncEnd";
+
+ public SyncEndPacket() {}
+
+ @Override
+ public Enum getType() {
+ return EnumClientPacket.SYNC_END;
+ }
+
+ @Override
+ public PacketChannel getChannel() {
+ return PacketHandler.CLIENT_PACKET;
+ }
+
+ @Override
+ public void sendData(ByteBuf out) throws IOException {
+ // TODO: Send Packet
+ }
+
+ @Override
+ public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ int synctype = in.readInt();
+ NBTTagCompound compound = Server.readNBT(in);
+ SyncController.clientSync(synctype, compound, true);
+ }
+}
diff --git a/src/main/java/kamkeel/network/packets/client/SyncPlayerPacket.java b/src/main/java/kamkeel/network/packets/client/SyncPlayerPacket.java
new file mode 100644
index 000000000..e477ad261
--- /dev/null
+++ b/src/main/java/kamkeel/network/packets/client/SyncPlayerPacket.java
@@ -0,0 +1,38 @@
+package kamkeel.network.packets.client;
+
+import io.netty.buffer.ByteBuf;
+import kamkeel.network.AbstractPacket;
+import kamkeel.network.PacketChannel;
+import kamkeel.network.PacketHandler;
+import kamkeel.network.enums.EnumClientPacket;
+import net.minecraft.entity.player.EntityPlayer;
+import noppes.npcs.client.NoppesUtil;
+
+import java.io.IOException;
+
+public final class SyncPlayerPacket extends AbstractPacket {
+ public static final String packetName = "Client|SyncPlayer";
+
+ public SyncPlayerPacket() {}
+
+ @Override
+ public Enum getType() {
+ return EnumClientPacket.SYNC_PLAYER;
+ }
+
+ @Override
+ public PacketChannel getChannel() {
+ return PacketHandler.CLIENT_PACKET;
+ }
+
+ @Override
+ public void sendData(ByteBuf out) throws IOException {
+ // TODO: Send Packet
+ }
+
+ @Override
+ public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ boolean sync = in.readBoolean();
+ NoppesUtil.handlePlayerDataEnd(sync);
+ }
+}
diff --git a/src/main/java/kamkeel/network/packets/client/SyncRecipesAddPacket.java b/src/main/java/kamkeel/network/packets/client/SyncRecipesAddPacket.java
new file mode 100644
index 000000000..996b1987c
--- /dev/null
+++ b/src/main/java/kamkeel/network/packets/client/SyncRecipesAddPacket.java
@@ -0,0 +1,51 @@
+package kamkeel.network.packets.client;
+
+import cpw.mods.fml.relauncher.Side;
+import io.netty.buffer.ByteBuf;
+import kamkeel.network.AbstractPacket;
+import kamkeel.network.PacketChannel;
+import kamkeel.network.PacketHandler;
+import kamkeel.network.enums.EnumClientPacket;
+import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.nbt.NBTTagList;
+import noppes.npcs.CustomNpcs;
+import noppes.npcs.Server;
+import noppes.npcs.controllers.RecipeController;
+import noppes.npcs.controllers.data.RecipeCarpentry;
+
+import java.io.IOException;
+
+public final class SyncRecipesAddPacket extends AbstractPacket {
+ public static final String packetName = "Client|SyncRecipesAdd";
+
+ public SyncRecipesAddPacket() {}
+
+ @Override
+ public Enum getType() {
+ return EnumClientPacket.SYNCRECIPES_ADD;
+ }
+
+ @Override
+ public PacketChannel getChannel() {
+ return PacketHandler.CLIENT_PACKET;
+ }
+
+ @Override
+ public void sendData(ByteBuf out) throws IOException {
+ // TODO: Send Packet
+ }
+
+ @Override
+ public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ if(CustomNpcs.side() != Side.CLIENT)
+ return;
+
+ NBTTagList list = Server.readNBT(in).getTagList("recipes", 10);
+ if (list != null) {
+ for (int i = 0; i < list.tagCount(); i++) {
+ RecipeCarpentry recipe = RecipeCarpentry.read(list.getCompoundTagAt(i));
+ RecipeController.syncRecipes.put(recipe.id, recipe);
+ }
+ }
+ }
+}
diff --git a/src/main/java/kamkeel/network/packets/client/SyncRecipesCarpentryBenchPacket.java b/src/main/java/kamkeel/network/packets/client/SyncRecipesCarpentryBenchPacket.java
new file mode 100644
index 000000000..ef474ef7d
--- /dev/null
+++ b/src/main/java/kamkeel/network/packets/client/SyncRecipesCarpentryBenchPacket.java
@@ -0,0 +1,38 @@
+package kamkeel.network.packets.client;
+
+import io.netty.buffer.ByteBuf;
+import kamkeel.network.AbstractPacket;
+import kamkeel.network.PacketChannel;
+import kamkeel.network.PacketHandler;
+import kamkeel.network.enums.EnumClientPacket;
+import net.minecraft.entity.player.EntityPlayer;
+import noppes.npcs.controllers.RecipeController;
+
+import java.io.IOException;
+
+public final class SyncRecipesCarpentryBenchPacket extends AbstractPacket {
+ public static final String packetName = "Client|SyncRecipesCarpentryBench";
+
+ public SyncRecipesCarpentryBenchPacket() {}
+
+ @Override
+ public Enum getType() {
+ return EnumClientPacket.SYNCRECIPES_CARPENTRYBENCH;
+ }
+
+ @Override
+ public PacketChannel getChannel() {
+ return PacketHandler.CLIENT_PACKET;
+ }
+
+ @Override
+ public void sendData(ByteBuf out) throws IOException {
+ // TODO: Send Packet
+ }
+
+ @Override
+ public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ RecipeController.Instance.anvilRecipes = RecipeController.syncRecipes;
+ RecipeController.syncRecipes.clear();
+ }
+}
diff --git a/src/main/java/kamkeel/network/packets/client/SyncRecipesWorkbenchPacket.java b/src/main/java/kamkeel/network/packets/client/SyncRecipesWorkbenchPacket.java
new file mode 100644
index 000000000..46773c030
--- /dev/null
+++ b/src/main/java/kamkeel/network/packets/client/SyncRecipesWorkbenchPacket.java
@@ -0,0 +1,38 @@
+package kamkeel.network.packets.client;
+
+import io.netty.buffer.ByteBuf;
+import kamkeel.network.AbstractPacket;
+import kamkeel.network.PacketChannel;
+import kamkeel.network.PacketHandler;
+import kamkeel.network.enums.EnumClientPacket;
+import net.minecraft.entity.player.EntityPlayer;
+import noppes.npcs.controllers.RecipeController;
+
+import java.io.IOException;
+
+public final class SyncRecipesWorkbenchPacket extends AbstractPacket {
+ public static final String packetName = "Client|SyncRecipesWorkbench";
+
+ public SyncRecipesWorkbenchPacket() {}
+
+ @Override
+ public Enum getType() {
+ return EnumClientPacket.SYNCRECIPES_WORKBENCH;
+ }
+
+ @Override
+ public PacketChannel getChannel() {
+ return PacketHandler.CLIENT_PACKET;
+ }
+
+ @Override
+ public void sendData(ByteBuf out) throws IOException {
+ // TODO: Send Packet
+ }
+
+ @Override
+ public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ RecipeController.reloadGlobalRecipes(RecipeController.syncRecipes);
+ RecipeController.syncRecipes.clear();
+ }
+}
diff --git a/src/main/java/kamkeel/network/packets/client/SyncRemovePacket.java b/src/main/java/kamkeel/network/packets/client/SyncRemovePacket.java
new file mode 100644
index 000000000..f4de94de7
--- /dev/null
+++ b/src/main/java/kamkeel/network/packets/client/SyncRemovePacket.java
@@ -0,0 +1,39 @@
+package kamkeel.network.packets.client;
+
+import io.netty.buffer.ByteBuf;
+import kamkeel.network.AbstractPacket;
+import kamkeel.network.PacketChannel;
+import kamkeel.network.PacketHandler;
+import kamkeel.network.enums.EnumClientPacket;
+import net.minecraft.entity.player.EntityPlayer;
+import noppes.npcs.controllers.SyncController;
+
+import java.io.IOException;
+
+public final class SyncRemovePacket extends AbstractPacket {
+ public static final String packetName = "Client|SyncRemove";
+
+ public SyncRemovePacket() {}
+
+ @Override
+ public Enum getType() {
+ return EnumClientPacket.SYNC_REMOVE;
+ }
+
+ @Override
+ public PacketChannel getChannel() {
+ return PacketHandler.CLIENT_PACKET;
+ }
+
+ @Override
+ public void sendData(ByteBuf out) throws IOException {
+ // TODO: Send Packet
+ }
+
+ @Override
+ public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ int synctype = in.readInt();
+ int id = in.readInt();
+ SyncController.clientSyncRemove(synctype, id);
+ }
+}
diff --git a/src/main/java/kamkeel/network/packets/client/SyncUpdatePacket.java b/src/main/java/kamkeel/network/packets/client/SyncUpdatePacket.java
new file mode 100644
index 000000000..3efa0a982
--- /dev/null
+++ b/src/main/java/kamkeel/network/packets/client/SyncUpdatePacket.java
@@ -0,0 +1,41 @@
+package kamkeel.network.packets.client;
+
+import io.netty.buffer.ByteBuf;
+import kamkeel.network.AbstractPacket;
+import kamkeel.network.PacketChannel;
+import kamkeel.network.PacketHandler;
+import kamkeel.network.enums.EnumClientPacket;
+import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.nbt.NBTTagCompound;
+import noppes.npcs.Server;
+import noppes.npcs.controllers.SyncController;
+
+import java.io.IOException;
+
+public final class SyncUpdatePacket extends AbstractPacket {
+ public static final String packetName = "Client|SyncUpdate";
+
+ public SyncUpdatePacket() {}
+
+ @Override
+ public Enum getType() {
+ return EnumClientPacket.SYNC_UPDATE;
+ }
+
+ @Override
+ public PacketChannel getChannel() {
+ return PacketHandler.CLIENT_PACKET;
+ }
+
+ @Override
+ public void sendData(ByteBuf out) throws IOException {
+ // TODO: Send Packet
+ }
+
+ @Override
+ public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ int synctype = in.readInt();
+ NBTTagCompound compound = Server.readNBT(in);
+ SyncController.clientSyncUpdate(synctype, compound, in);
+ }
+}
diff --git a/src/main/java/kamkeel/network/packets/client/SyncWeaponPacket.java b/src/main/java/kamkeel/network/packets/client/SyncWeaponPacket.java
new file mode 100644
index 000000000..71886c043
--- /dev/null
+++ b/src/main/java/kamkeel/network/packets/client/SyncWeaponPacket.java
@@ -0,0 +1,48 @@
+package kamkeel.network.packets.client;
+
+import io.netty.buffer.ByteBuf;
+import kamkeel.network.AbstractPacket;
+import kamkeel.network.PacketChannel;
+import kamkeel.network.PacketHandler;
+import kamkeel.network.enums.EnumClientPacket;
+import net.minecraft.entity.Entity;
+import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.item.ItemStack;
+import net.minecraft.nbt.NBTTagCompound;
+import noppes.npcs.Server;
+import noppes.npcs.entity.EntityNPCInterface;
+
+import java.io.IOException;
+
+public final class SyncWeaponPacket extends AbstractPacket {
+ public static final String packetName = "Client|SyncWeapon";
+
+ public SyncWeaponPacket() {}
+
+ @Override
+ public Enum getType() {
+ return EnumClientPacket.SYNC_WEAPON;
+ }
+
+ @Override
+ public PacketChannel getChannel() {
+ return PacketHandler.CLIENT_PACKET;
+ }
+
+ @Override
+ public void sendData(ByteBuf out) throws IOException {
+ // TODO: Send Packet
+ }
+
+ @Override
+ public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ Entity entity = player.worldObj.getEntityByID(in.readInt());
+ if (!(entity instanceof EntityNPCInterface)) return;
+
+ EntityNPCInterface npc = (EntityNPCInterface) entity;
+ int weaponSlotIndex = in.readInt();
+ NBTTagCompound nbt = Server.readNBT(in);
+ ItemStack stack = ItemStack.loadItemStackFromNBT(nbt);
+ npc.inventory.weapons.put(weaponSlotIndex, stack);
+ }
+}
diff --git a/src/main/java/kamkeel/network/packets/client/TeleporterPacket.java b/src/main/java/kamkeel/network/packets/client/TeleporterPacket.java
new file mode 100644
index 000000000..2ffd14b3a
--- /dev/null
+++ b/src/main/java/kamkeel/network/packets/client/TeleporterPacket.java
@@ -0,0 +1,38 @@
+package kamkeel.network.packets.client;
+
+import io.netty.buffer.ByteBuf;
+import kamkeel.network.AbstractPacket;
+import kamkeel.network.PacketChannel;
+import kamkeel.network.PacketHandler;
+import kamkeel.network.enums.EnumClientPacket;
+import net.minecraft.entity.player.EntityPlayer;
+import noppes.npcs.CustomNpcs;
+import noppes.npcs.constants.EnumGuiType;
+
+import java.io.IOException;
+
+public final class TeleporterPacket extends AbstractPacket {
+ public static final String packetName = "Client|Teleporter";
+
+ public TeleporterPacket() {}
+
+ @Override
+ public Enum getType() {
+ return EnumClientPacket.TELEPORTER;
+ }
+
+ @Override
+ public PacketChannel getChannel() {
+ return PacketHandler.CLIENT_PACKET;
+ }
+
+ @Override
+ public void sendData(ByteBuf out) throws IOException {
+ // TODO: Send Packet
+ }
+
+ @Override
+ public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ CustomNpcs.proxy.openGui(null, EnumGuiType.NpcDimensions);
+ }
+}
diff --git a/src/main/java/kamkeel/network/packets/client/UpdateAnimationsPacket.java b/src/main/java/kamkeel/network/packets/client/UpdateAnimationsPacket.java
new file mode 100644
index 000000000..99ba8f582
--- /dev/null
+++ b/src/main/java/kamkeel/network/packets/client/UpdateAnimationsPacket.java
@@ -0,0 +1,77 @@
+package kamkeel.network.packets.client;
+
+import io.netty.buffer.ByteBuf;
+import kamkeel.network.AbstractPacket;
+import kamkeel.network.PacketChannel;
+import kamkeel.network.PacketHandler;
+import kamkeel.network.enums.EnumClientPacket;
+import net.minecraft.client.Minecraft;
+import net.minecraft.entity.Entity;
+import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.nbt.NBTTagCompound;
+import noppes.npcs.Server;
+import noppes.npcs.client.ClientCacheHandler;
+import noppes.npcs.controllers.data.Animation;
+import noppes.npcs.controllers.data.AnimationData;
+import noppes.npcs.entity.EntityNPCInterface;
+
+import java.io.IOException;
+
+public final class UpdateAnimationsPacket extends AbstractPacket {
+ public static final String packetName = "Client|UpdateAnimations";
+
+ public UpdateAnimationsPacket() {}
+
+ @Override
+ public Enum getType() {
+ return EnumClientPacket.UPDATE_ANIMATIONS;
+ }
+
+ @Override
+ public PacketChannel getChannel() {
+ return PacketHandler.CLIENT_PACKET;
+ }
+
+ @Override
+ public void sendData(ByteBuf out) throws IOException {
+ // TODO: Send Packet
+ }
+
+ @Override
+ public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ NBTTagCompound nbt = Server.readNBT(in);
+ AnimationData animationData = null;
+
+ if (nbt.hasKey("EntityId")) {
+ Entity entity = Minecraft.getMinecraft().theWorld.getEntityByID(nbt.getInteger("EntityId"));
+ if (entity instanceof EntityNPCInterface) {
+ animationData = ((EntityNPCInterface) entity).display.animationData;
+ }
+ } else {
+ String playerName = Server.readString(in);
+ EntityPlayer sendingPlayer = Minecraft.getMinecraft().theWorld.getPlayerEntityByName(playerName);
+ if (sendingPlayer != null) {
+ if (!ClientCacheHandler.playerAnimations.containsKey(sendingPlayer.getUniqueID())) {
+ ClientCacheHandler.playerAnimations.put(sendingPlayer.getUniqueID(), new AnimationData(sendingPlayer));
+ }
+ animationData = ClientCacheHandler.playerAnimations.get(sendingPlayer.getUniqueID());
+ animationData.parent = sendingPlayer;
+ }
+ }
+
+ if (animationData != null) {
+ int animationId;
+ if (nbt.hasKey("AnimationID")) {
+ animationId = nbt.getInteger("AnimationID");
+ } else {
+ Animation animation = new Animation();
+ animation.readFromNBT(nbt.getCompoundTag("Animation"));
+ ClientCacheHandler.animationCache.put(animation.getID(), animation);
+ animationId = animation.getID();
+ }
+
+ animationData.setAnimation(ClientCacheHandler.animationCache.get(animationId));
+ animationData.readFromNBT(nbt);
+ }
+ }
+}
diff --git a/src/main/java/kamkeel/network/packets/client/UpdateNpcPacket.java b/src/main/java/kamkeel/network/packets/client/UpdateNpcPacket.java
new file mode 100644
index 000000000..1243f8c7f
--- /dev/null
+++ b/src/main/java/kamkeel/network/packets/client/UpdateNpcPacket.java
@@ -0,0 +1,45 @@
+package kamkeel.network.packets.client;
+
+import io.netty.buffer.ByteBuf;
+import kamkeel.network.AbstractPacket;
+import kamkeel.network.PacketChannel;
+import kamkeel.network.PacketHandler;
+import kamkeel.network.enums.EnumClientPacket;
+import net.minecraft.client.Minecraft;
+import net.minecraft.entity.Entity;
+import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.nbt.NBTTagCompound;
+import noppes.npcs.Server;
+import noppes.npcs.entity.EntityNPCInterface;
+
+import java.io.IOException;
+
+public final class UpdateNpcPacket extends AbstractPacket {
+ public static final String packetName = "Client|UpdateNpc";
+
+ public UpdateNpcPacket() {}
+
+ @Override
+ public Enum getType() {
+ return EnumClientPacket.UPDATE_NPC;
+ }
+
+ @Override
+ public PacketChannel getChannel() {
+ return PacketHandler.CLIENT_PACKET;
+ }
+
+ @Override
+ public void sendData(ByteBuf out) throws IOException {
+ // TODO: Send Packet
+ }
+
+ @Override
+ public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ NBTTagCompound compound = Server.readNBT(in);
+ Entity entity = Minecraft.getMinecraft().theWorld.getEntityByID(compound.getInteger("EntityId"));
+ if (entity instanceof EntityNPCInterface) {
+ ((EntityNPCInterface) entity).readSpawnData(compound);
+ }
+ }
+}
diff --git a/src/main/java/kamkeel/network/packets/client/VillagerListPacket.java b/src/main/java/kamkeel/network/packets/client/VillagerListPacket.java
new file mode 100644
index 000000000..a763c3fe4
--- /dev/null
+++ b/src/main/java/kamkeel/network/packets/client/VillagerListPacket.java
@@ -0,0 +1,41 @@
+package kamkeel.network.packets.client;
+
+import io.netty.buffer.ByteBuf;
+import kamkeel.network.AbstractPacket;
+import kamkeel.network.PacketChannel;
+import kamkeel.network.PacketHandler;
+import kamkeel.network.enums.EnumClientPacket;
+import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.network.PacketBuffer;
+import noppes.npcs.Server;
+import noppes.npcs.ServerEventsHandler;
+import net.minecraft.village.MerchantRecipeList;
+
+import java.io.IOException;
+
+public final class VillagerListPacket extends AbstractPacket {
+ public static final String packetName = "Client|VillagerList";
+
+ public VillagerListPacket() {}
+
+ @Override
+ public Enum getType() {
+ return EnumClientPacket.VILLAGER_LIST;
+ }
+
+ @Override
+ public PacketChannel getChannel() {
+ return PacketHandler.CLIENT_PACKET;
+ }
+
+ @Override
+ public void sendData(ByteBuf out) throws IOException {
+ // TODO: Send Packet
+ }
+
+ @Override
+ public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ MerchantRecipeList recipes = MerchantRecipeList.func_151390_b(new PacketBuffer(in));
+ ServerEventsHandler.Merchant.setRecipes(recipes);
+ }
+}
diff --git a/src/main/java/noppes/npcs/Server.java b/src/main/java/noppes/npcs/Server.java
index e1aa4c361..317448523 100644
--- a/src/main/java/noppes/npcs/Server.java
+++ b/src/main/java/noppes/npcs/Server.java
@@ -143,5 +143,4 @@ public class Server {
return null;
}
}
-
}
From d2da5c6000d8784d2655d018da8daa7d6c01327a Mon Sep 17 00:00:00 2001
From: Kam
Date: Tue, 28 Jan 2025 15:50:00 -0500
Subject: [PATCH 007/357] Rename Packet
---
.../client/{LargeNbtPartPacket.java => LargeNBTPartPacket.java} | 0
1 file changed, 0 insertions(+), 0 deletions(-)
rename src/main/java/kamkeel/network/packets/client/{LargeNbtPartPacket.java => LargeNBTPartPacket.java} (100%)
diff --git a/src/main/java/kamkeel/network/packets/client/LargeNbtPartPacket.java b/src/main/java/kamkeel/network/packets/client/LargeNBTPartPacket.java
similarity index 100%
rename from src/main/java/kamkeel/network/packets/client/LargeNbtPartPacket.java
rename to src/main/java/kamkeel/network/packets/client/LargeNBTPartPacket.java
From 882bce2d4bac0c27782e6705f0d9b4cf792c18be Mon Sep 17 00:00:00 2001
From: Kam
Date: Tue, 28 Jan 2025 15:51:50 -0500
Subject: [PATCH 008/357] Reorgs
---
.../network/packets/client/{ => gui}/GuiClosePacket.java | 2 +-
.../kamkeel/network/packets/client/{ => gui}/GuiDataPacket.java | 2 +-
.../network/packets/client/{ => gui}/GuiErrorPacket.java | 2 +-
.../kamkeel/network/packets/client/{ => gui}/GuiPacket.java | 2 +-
.../network/packets/client/{ => gui}/GuiRedstonePacket.java | 2 +-
.../network/packets/client/{ => gui}/GuiWaypointPacket.java | 2 +-
.../network/packets/client/{ => gui}/IsGuiOpenPacket.java | 2 +-
.../network/packets/client/{ => sync}/SyncAddPacket.java | 2 +-
.../network/packets/client/{ => sync}/SyncConfigPacket.java | 2 +-
.../network/packets/client/{ => sync}/SyncEndPacket.java | 2 +-
.../network/packets/client/{ => sync}/SyncPlayerPacket.java | 2 +-
.../network/packets/client/{ => sync}/SyncRecipesAddPacket.java | 2 +-
.../client/{ => sync}/SyncRecipesCarpentryBenchPacket.java | 2 +-
.../packets/client/{ => sync}/SyncRecipesWorkbenchPacket.java | 2 +-
.../network/packets/client/{ => sync}/SyncRemovePacket.java | 2 +-
.../network/packets/client/{ => sync}/SyncUpdatePacket.java | 2 +-
.../network/packets/client/{ => sync}/SyncWeaponPacket.java | 2 +-
17 files changed, 17 insertions(+), 17 deletions(-)
rename src/main/java/kamkeel/network/packets/client/{ => gui}/GuiClosePacket.java (96%)
rename src/main/java/kamkeel/network/packets/client/{ => gui}/GuiDataPacket.java (97%)
rename src/main/java/kamkeel/network/packets/client/{ => gui}/GuiErrorPacket.java (96%)
rename src/main/java/kamkeel/network/packets/client/{ => gui}/GuiPacket.java (96%)
rename src/main/java/kamkeel/network/packets/client/{ => gui}/GuiRedstonePacket.java (95%)
rename src/main/java/kamkeel/network/packets/client/{ => gui}/GuiWaypointPacket.java (95%)
rename src/main/java/kamkeel/network/packets/client/{ => gui}/IsGuiOpenPacket.java (95%)
rename src/main/java/kamkeel/network/packets/client/{ => sync}/SyncAddPacket.java (96%)
rename src/main/java/kamkeel/network/packets/client/{ => sync}/SyncConfigPacket.java (95%)
rename src/main/java/kamkeel/network/packets/client/{ => sync}/SyncEndPacket.java (96%)
rename src/main/java/kamkeel/network/packets/client/{ => sync}/SyncPlayerPacket.java (95%)
rename src/main/java/kamkeel/network/packets/client/{ => sync}/SyncRecipesAddPacket.java (97%)
rename src/main/java/kamkeel/network/packets/client/{ => sync}/SyncRecipesCarpentryBenchPacket.java (96%)
rename src/main/java/kamkeel/network/packets/client/{ => sync}/SyncRecipesWorkbenchPacket.java (95%)
rename src/main/java/kamkeel/network/packets/client/{ => sync}/SyncRemovePacket.java (95%)
rename src/main/java/kamkeel/network/packets/client/{ => sync}/SyncUpdatePacket.java (96%)
rename src/main/java/kamkeel/network/packets/client/{ => sync}/SyncWeaponPacket.java (96%)
diff --git a/src/main/java/kamkeel/network/packets/client/GuiClosePacket.java b/src/main/java/kamkeel/network/packets/client/gui/GuiClosePacket.java
similarity index 96%
rename from src/main/java/kamkeel/network/packets/client/GuiClosePacket.java
rename to src/main/java/kamkeel/network/packets/client/gui/GuiClosePacket.java
index 1b76f3e49..883fdd29e 100644
--- a/src/main/java/kamkeel/network/packets/client/GuiClosePacket.java
+++ b/src/main/java/kamkeel/network/packets/client/gui/GuiClosePacket.java
@@ -1,4 +1,4 @@
-package kamkeel.network.packets.client;
+package kamkeel.network.packets.client.gui;
import io.netty.buffer.ByteBuf;
import kamkeel.network.AbstractPacket;
diff --git a/src/main/java/kamkeel/network/packets/client/GuiDataPacket.java b/src/main/java/kamkeel/network/packets/client/gui/GuiDataPacket.java
similarity index 97%
rename from src/main/java/kamkeel/network/packets/client/GuiDataPacket.java
rename to src/main/java/kamkeel/network/packets/client/gui/GuiDataPacket.java
index d75690875..c41427987 100644
--- a/src/main/java/kamkeel/network/packets/client/GuiDataPacket.java
+++ b/src/main/java/kamkeel/network/packets/client/gui/GuiDataPacket.java
@@ -1,4 +1,4 @@
-package kamkeel.network.packets.client;
+package kamkeel.network.packets.client.gui;
import io.netty.buffer.ByteBuf;
import kamkeel.network.AbstractPacket;
diff --git a/src/main/java/kamkeel/network/packets/client/GuiErrorPacket.java b/src/main/java/kamkeel/network/packets/client/gui/GuiErrorPacket.java
similarity index 96%
rename from src/main/java/kamkeel/network/packets/client/GuiErrorPacket.java
rename to src/main/java/kamkeel/network/packets/client/gui/GuiErrorPacket.java
index 474584379..d653e88f8 100644
--- a/src/main/java/kamkeel/network/packets/client/GuiErrorPacket.java
+++ b/src/main/java/kamkeel/network/packets/client/gui/GuiErrorPacket.java
@@ -1,4 +1,4 @@
-package kamkeel.network.packets.client;
+package kamkeel.network.packets.client.gui;
import io.netty.buffer.ByteBuf;
import kamkeel.network.AbstractPacket;
diff --git a/src/main/java/kamkeel/network/packets/client/GuiPacket.java b/src/main/java/kamkeel/network/packets/client/gui/GuiPacket.java
similarity index 96%
rename from src/main/java/kamkeel/network/packets/client/GuiPacket.java
rename to src/main/java/kamkeel/network/packets/client/gui/GuiPacket.java
index ece5bbcfa..a86c8a8fe 100644
--- a/src/main/java/kamkeel/network/packets/client/GuiPacket.java
+++ b/src/main/java/kamkeel/network/packets/client/gui/GuiPacket.java
@@ -1,4 +1,4 @@
-package kamkeel.network.packets.client;
+package kamkeel.network.packets.client.gui;
import io.netty.buffer.ByteBuf;
import kamkeel.network.AbstractPacket;
diff --git a/src/main/java/kamkeel/network/packets/client/GuiRedstonePacket.java b/src/main/java/kamkeel/network/packets/client/gui/GuiRedstonePacket.java
similarity index 95%
rename from src/main/java/kamkeel/network/packets/client/GuiRedstonePacket.java
rename to src/main/java/kamkeel/network/packets/client/gui/GuiRedstonePacket.java
index de0c3bd4c..3acf4e559 100644
--- a/src/main/java/kamkeel/network/packets/client/GuiRedstonePacket.java
+++ b/src/main/java/kamkeel/network/packets/client/gui/GuiRedstonePacket.java
@@ -1,4 +1,4 @@
-package kamkeel.network.packets.client;
+package kamkeel.network.packets.client.gui;
import io.netty.buffer.ByteBuf;
import kamkeel.network.AbstractPacket;
diff --git a/src/main/java/kamkeel/network/packets/client/GuiWaypointPacket.java b/src/main/java/kamkeel/network/packets/client/gui/GuiWaypointPacket.java
similarity index 95%
rename from src/main/java/kamkeel/network/packets/client/GuiWaypointPacket.java
rename to src/main/java/kamkeel/network/packets/client/gui/GuiWaypointPacket.java
index 4553e2040..91a4ad0d4 100644
--- a/src/main/java/kamkeel/network/packets/client/GuiWaypointPacket.java
+++ b/src/main/java/kamkeel/network/packets/client/gui/GuiWaypointPacket.java
@@ -1,4 +1,4 @@
-package kamkeel.network.packets.client;
+package kamkeel.network.packets.client.gui;
import io.netty.buffer.ByteBuf;
import kamkeel.network.AbstractPacket;
diff --git a/src/main/java/kamkeel/network/packets/client/IsGuiOpenPacket.java b/src/main/java/kamkeel/network/packets/client/gui/IsGuiOpenPacket.java
similarity index 95%
rename from src/main/java/kamkeel/network/packets/client/IsGuiOpenPacket.java
rename to src/main/java/kamkeel/network/packets/client/gui/IsGuiOpenPacket.java
index 8f44e2602..54f0c905c 100644
--- a/src/main/java/kamkeel/network/packets/client/IsGuiOpenPacket.java
+++ b/src/main/java/kamkeel/network/packets/client/gui/IsGuiOpenPacket.java
@@ -1,4 +1,4 @@
-package kamkeel.network.packets.client;
+package kamkeel.network.packets.client.gui;
import io.netty.buffer.ByteBuf;
import kamkeel.network.AbstractPacket;
diff --git a/src/main/java/kamkeel/network/packets/client/SyncAddPacket.java b/src/main/java/kamkeel/network/packets/client/sync/SyncAddPacket.java
similarity index 96%
rename from src/main/java/kamkeel/network/packets/client/SyncAddPacket.java
rename to src/main/java/kamkeel/network/packets/client/sync/SyncAddPacket.java
index beb107093..6224bb102 100644
--- a/src/main/java/kamkeel/network/packets/client/SyncAddPacket.java
+++ b/src/main/java/kamkeel/network/packets/client/sync/SyncAddPacket.java
@@ -1,4 +1,4 @@
-package kamkeel.network.packets.client;
+package kamkeel.network.packets.client.sync;
import io.netty.buffer.ByteBuf;
import kamkeel.network.AbstractPacket;
diff --git a/src/main/java/kamkeel/network/packets/client/SyncConfigPacket.java b/src/main/java/kamkeel/network/packets/client/sync/SyncConfigPacket.java
similarity index 95%
rename from src/main/java/kamkeel/network/packets/client/SyncConfigPacket.java
rename to src/main/java/kamkeel/network/packets/client/sync/SyncConfigPacket.java
index b621b36bd..eaf3b419a 100644
--- a/src/main/java/kamkeel/network/packets/client/SyncConfigPacket.java
+++ b/src/main/java/kamkeel/network/packets/client/sync/SyncConfigPacket.java
@@ -1,4 +1,4 @@
-package kamkeel.network.packets.client;
+package kamkeel.network.packets.client.sync;
import io.netty.buffer.ByteBuf;
import kamkeel.network.AbstractPacket;
diff --git a/src/main/java/kamkeel/network/packets/client/SyncEndPacket.java b/src/main/java/kamkeel/network/packets/client/sync/SyncEndPacket.java
similarity index 96%
rename from src/main/java/kamkeel/network/packets/client/SyncEndPacket.java
rename to src/main/java/kamkeel/network/packets/client/sync/SyncEndPacket.java
index 6e6f6a27f..bc5a4e26d 100644
--- a/src/main/java/kamkeel/network/packets/client/SyncEndPacket.java
+++ b/src/main/java/kamkeel/network/packets/client/sync/SyncEndPacket.java
@@ -1,4 +1,4 @@
-package kamkeel.network.packets.client;
+package kamkeel.network.packets.client.sync;
import io.netty.buffer.ByteBuf;
import kamkeel.network.AbstractPacket;
diff --git a/src/main/java/kamkeel/network/packets/client/SyncPlayerPacket.java b/src/main/java/kamkeel/network/packets/client/sync/SyncPlayerPacket.java
similarity index 95%
rename from src/main/java/kamkeel/network/packets/client/SyncPlayerPacket.java
rename to src/main/java/kamkeel/network/packets/client/sync/SyncPlayerPacket.java
index e477ad261..372f26e60 100644
--- a/src/main/java/kamkeel/network/packets/client/SyncPlayerPacket.java
+++ b/src/main/java/kamkeel/network/packets/client/sync/SyncPlayerPacket.java
@@ -1,4 +1,4 @@
-package kamkeel.network.packets.client;
+package kamkeel.network.packets.client.sync;
import io.netty.buffer.ByteBuf;
import kamkeel.network.AbstractPacket;
diff --git a/src/main/java/kamkeel/network/packets/client/SyncRecipesAddPacket.java b/src/main/java/kamkeel/network/packets/client/sync/SyncRecipesAddPacket.java
similarity index 97%
rename from src/main/java/kamkeel/network/packets/client/SyncRecipesAddPacket.java
rename to src/main/java/kamkeel/network/packets/client/sync/SyncRecipesAddPacket.java
index 996b1987c..8460dac7f 100644
--- a/src/main/java/kamkeel/network/packets/client/SyncRecipesAddPacket.java
+++ b/src/main/java/kamkeel/network/packets/client/sync/SyncRecipesAddPacket.java
@@ -1,4 +1,4 @@
-package kamkeel.network.packets.client;
+package kamkeel.network.packets.client.sync;
import cpw.mods.fml.relauncher.Side;
import io.netty.buffer.ByteBuf;
diff --git a/src/main/java/kamkeel/network/packets/client/SyncRecipesCarpentryBenchPacket.java b/src/main/java/kamkeel/network/packets/client/sync/SyncRecipesCarpentryBenchPacket.java
similarity index 96%
rename from src/main/java/kamkeel/network/packets/client/SyncRecipesCarpentryBenchPacket.java
rename to src/main/java/kamkeel/network/packets/client/sync/SyncRecipesCarpentryBenchPacket.java
index ef474ef7d..c49a37dc0 100644
--- a/src/main/java/kamkeel/network/packets/client/SyncRecipesCarpentryBenchPacket.java
+++ b/src/main/java/kamkeel/network/packets/client/sync/SyncRecipesCarpentryBenchPacket.java
@@ -1,4 +1,4 @@
-package kamkeel.network.packets.client;
+package kamkeel.network.packets.client.sync;
import io.netty.buffer.ByteBuf;
import kamkeel.network.AbstractPacket;
diff --git a/src/main/java/kamkeel/network/packets/client/SyncRecipesWorkbenchPacket.java b/src/main/java/kamkeel/network/packets/client/sync/SyncRecipesWorkbenchPacket.java
similarity index 95%
rename from src/main/java/kamkeel/network/packets/client/SyncRecipesWorkbenchPacket.java
rename to src/main/java/kamkeel/network/packets/client/sync/SyncRecipesWorkbenchPacket.java
index 46773c030..bb3a4ab79 100644
--- a/src/main/java/kamkeel/network/packets/client/SyncRecipesWorkbenchPacket.java
+++ b/src/main/java/kamkeel/network/packets/client/sync/SyncRecipesWorkbenchPacket.java
@@ -1,4 +1,4 @@
-package kamkeel.network.packets.client;
+package kamkeel.network.packets.client.sync;
import io.netty.buffer.ByteBuf;
import kamkeel.network.AbstractPacket;
diff --git a/src/main/java/kamkeel/network/packets/client/SyncRemovePacket.java b/src/main/java/kamkeel/network/packets/client/sync/SyncRemovePacket.java
similarity index 95%
rename from src/main/java/kamkeel/network/packets/client/SyncRemovePacket.java
rename to src/main/java/kamkeel/network/packets/client/sync/SyncRemovePacket.java
index f4de94de7..adc7c9ae3 100644
--- a/src/main/java/kamkeel/network/packets/client/SyncRemovePacket.java
+++ b/src/main/java/kamkeel/network/packets/client/sync/SyncRemovePacket.java
@@ -1,4 +1,4 @@
-package kamkeel.network.packets.client;
+package kamkeel.network.packets.client.sync;
import io.netty.buffer.ByteBuf;
import kamkeel.network.AbstractPacket;
diff --git a/src/main/java/kamkeel/network/packets/client/SyncUpdatePacket.java b/src/main/java/kamkeel/network/packets/client/sync/SyncUpdatePacket.java
similarity index 96%
rename from src/main/java/kamkeel/network/packets/client/SyncUpdatePacket.java
rename to src/main/java/kamkeel/network/packets/client/sync/SyncUpdatePacket.java
index 3efa0a982..c95ad6357 100644
--- a/src/main/java/kamkeel/network/packets/client/SyncUpdatePacket.java
+++ b/src/main/java/kamkeel/network/packets/client/sync/SyncUpdatePacket.java
@@ -1,4 +1,4 @@
-package kamkeel.network.packets.client;
+package kamkeel.network.packets.client.sync;
import io.netty.buffer.ByteBuf;
import kamkeel.network.AbstractPacket;
diff --git a/src/main/java/kamkeel/network/packets/client/SyncWeaponPacket.java b/src/main/java/kamkeel/network/packets/client/sync/SyncWeaponPacket.java
similarity index 96%
rename from src/main/java/kamkeel/network/packets/client/SyncWeaponPacket.java
rename to src/main/java/kamkeel/network/packets/client/sync/SyncWeaponPacket.java
index 71886c043..59be33b6e 100644
--- a/src/main/java/kamkeel/network/packets/client/SyncWeaponPacket.java
+++ b/src/main/java/kamkeel/network/packets/client/sync/SyncWeaponPacket.java
@@ -1,4 +1,4 @@
-package kamkeel.network.packets.client;
+package kamkeel.network.packets.client.sync;
import io.netty.buffer.ByteBuf;
import kamkeel.network.AbstractPacket;
From 5790926e5163c85ef2017fbfd99adffdee3ffae7 Mon Sep 17 00:00:00 2001
From: Kam
Date: Tue, 28 Jan 2025 18:14:18 -0500
Subject: [PATCH 009/357] More Super Commits for Packet System
---
.../java/kamkeel/network/KamUtilServer.java | 20 ++++
.../kamkeel/network/LargeAbstractPacket.java | 59 ++++++++++
.../java/kamkeel/network/PacketHandler.java | 105 ++++++++++++++++--
.../network/enums/EnumClientPacket.java | 2 -
...igPacket.java => ConfigCommandPacket.java} | 6 +-
.../network/packets/client/DBCFormPacket.java | 2 +-
.../packets/client/LargeNBTEndPacket.java | 2 +-
.../packets/client/LargeNBTPartPacket.java | 2 +-
.../packets/client/OpenBookPacket.java | 2 +-
.../PlayerUpdateSkinOverlaysPacket.java | 2 +-
.../network/packets/client/RolePacket.java | 2 +-
.../packets/client/ScrollDataPacket.java | 37 ------
.../packets/client/ScrollDataPartPacket.java | 37 ------
.../packets/client/ScrollGroupPacket.java | 37 ------
.../packets/client/ScrollGroupPartPacket.java | 37 ------
.../packets/client/ScrollListPacket.java | 37 ------
.../ClonerGUIPacket.java} | 6 +-
.../GUIClonerPacket.java} | 16 ++-
.../packets/client/gui/GuiRedstonePacket.java | 2 +-
.../packets/client/gui/GuiWaypointPacket.java | 2 +-
.../packets/client/gui/IsGuiOpenPacket.java | 2 +-
.../{ => sound}/ContinueSoundsPacket.java | 2 +-
.../client/{ => sound}/PauseSoundsPacket.java | 2 +-
.../client/{ => sound}/PlayMusicPacket.java | 2 +-
.../client/{ => sound}/PlaySoundPacket.java | 2 +-
.../{ => sound}/PlaySoundToNoIdPacket.java | 2 +-
.../client/{ => sound}/PlaySoundToPacket.java | 2 +-
.../packets/large/LargeScrollDataPacket.java | 49 ++++++++
.../packets/large/LargeScrollGroupPacket.java | 49 ++++++++
.../packets/large/LargeScrollListPacket.java | 49 ++++++++
src/main/java/kamkeel/util/ByteBufUtils.java | 56 ++++++++++
31 files changed, 407 insertions(+), 225 deletions(-)
create mode 100644 src/main/java/kamkeel/network/KamUtilServer.java
create mode 100644 src/main/java/kamkeel/network/LargeAbstractPacket.java
rename src/main/java/kamkeel/network/packets/client/{ConfigPacket.java => ConfigCommandPacket.java} (91%)
delete mode 100644 src/main/java/kamkeel/network/packets/client/ScrollDataPacket.java
delete mode 100644 src/main/java/kamkeel/network/packets/client/ScrollDataPartPacket.java
delete mode 100644 src/main/java/kamkeel/network/packets/client/ScrollGroupPacket.java
delete mode 100644 src/main/java/kamkeel/network/packets/client/ScrollGroupPartPacket.java
delete mode 100644 src/main/java/kamkeel/network/packets/client/ScrollListPacket.java
rename src/main/java/kamkeel/network/packets/client/{ClonerPacket.java => gui/ClonerGUIPacket.java} (87%)
rename src/main/java/kamkeel/network/packets/client/{ClonePacket.java => gui/GUIClonerPacket.java} (69%)
rename src/main/java/kamkeel/network/packets/client/{ => sound}/ContinueSoundsPacket.java (95%)
rename src/main/java/kamkeel/network/packets/client/{ => sound}/PauseSoundsPacket.java (95%)
rename src/main/java/kamkeel/network/packets/client/{ => sound}/PlayMusicPacket.java (95%)
rename src/main/java/kamkeel/network/packets/client/{ => sound}/PlaySoundPacket.java (96%)
rename src/main/java/kamkeel/network/packets/client/{ => sound}/PlaySoundToNoIdPacket.java (96%)
rename src/main/java/kamkeel/network/packets/client/{ => sound}/PlaySoundToPacket.java (96%)
create mode 100644 src/main/java/kamkeel/network/packets/large/LargeScrollDataPacket.java
create mode 100644 src/main/java/kamkeel/network/packets/large/LargeScrollGroupPacket.java
create mode 100644 src/main/java/kamkeel/network/packets/large/LargeScrollListPacket.java
diff --git a/src/main/java/kamkeel/network/KamUtilServer.java b/src/main/java/kamkeel/network/KamUtilServer.java
new file mode 100644
index 000000000..14710ac7c
--- /dev/null
+++ b/src/main/java/kamkeel/network/KamUtilServer.java
@@ -0,0 +1,20 @@
+package kamkeel.network;
+
+import kamkeel.network.packets.large.LargeScrollGroupPacket;
+import kamkeel.network.packets.large.LargeScrollDataPacket;
+import net.minecraft.entity.player.EntityPlayerMP;
+
+import java.util.Map;
+
+public class KamUtilServer {
+
+ public static void sendScrollData(EntityPlayerMP player, Map map) {
+ LargeScrollDataPacket packet = new LargeScrollDataPacket(map);
+ PacketHandler.Instance.sendToPlayer(packet, player);
+ }
+
+ public static void sendScrollGroup(EntityPlayerMP player, Map map){
+ LargeScrollGroupPacket packet = new LargeScrollGroupPacket(map);
+ PacketHandler.Instance.sendToPlayer(packet, player);
+ }
+}
diff --git a/src/main/java/kamkeel/network/LargeAbstractPacket.java b/src/main/java/kamkeel/network/LargeAbstractPacket.java
new file mode 100644
index 000000000..067e89945
--- /dev/null
+++ b/src/main/java/kamkeel/network/LargeAbstractPacket.java
@@ -0,0 +1,59 @@
+// src/main/java/kamkeel/network/LargeAbstractPacket.java
+package kamkeel.network;
+
+import io.netty.buffer.ByteBuf;
+import io.netty.buffer.Unpooled;
+import net.minecraft.entity.player.EntityPlayer;
+
+import java.io.IOException;
+import java.util.HashMap;
+import java.util.Map;
+
+public abstract class LargeAbstractPacket extends AbstractPacket {
+ private static final int CHUNK_SIZE = 30000;
+ private static final Map packetChunks = new HashMap<>();
+ private static final Map receivedChunks = new HashMap<>();
+
+ public abstract void handleData(ByteBuf data, EntityPlayer player) throws IOException;
+
+ @Override
+ public void sendData(ByteBuf out) throws IOException {
+ ByteBuf data = Unpooled.buffer();
+ writeData(data);
+ int totalSize = data.readableBytes();
+ int packetId = this.hashCode(); // Unique ID for this packet
+ int totalChunks = (int) Math.ceil((double) totalSize / CHUNK_SIZE);
+
+ for (int i = 0; i < totalSize; i += CHUNK_SIZE) {
+ int chunkSize = Math.min(CHUNK_SIZE, totalSize - i);
+ ByteBuf chunk = data.readBytes(chunkSize);
+ out.writeInt(packetId);
+ out.writeInt(totalSize);
+ out.writeInt(i);
+ out.writeInt(totalChunks);
+ out.writeBytes(chunk);
+ }
+ }
+
+ @Override
+ public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ int packetId = in.readInt();
+ int totalSize = in.readInt();
+ int offset = in.readInt();
+ int totalChunks = in.readInt();
+ ByteBuf chunk = in.readBytes(in.readableBytes());
+
+ ByteBuf data = packetChunks.computeIfAbsent(packetId, k -> Unpooled.buffer(totalSize));
+ data.setBytes(offset, chunk);
+
+ int receivedChunkCount = receivedChunks.compute(packetId, (k, v) -> (v == null) ? 1 : v + 1);
+
+ if (receivedChunkCount == totalChunks) {
+ packetChunks.remove(packetId);
+ receivedChunks.remove(packetId);
+ handleData(data, player);
+ }
+ }
+
+ public abstract void writeData(ByteBuf out) throws IOException;
+}
diff --git a/src/main/java/kamkeel/network/PacketHandler.java b/src/main/java/kamkeel/network/PacketHandler.java
index 8e15f8761..5864fa6a5 100644
--- a/src/main/java/kamkeel/network/PacketHandler.java
+++ b/src/main/java/kamkeel/network/PacketHandler.java
@@ -5,16 +5,16 @@ import cpw.mods.fml.common.network.FMLEventChannel;
import cpw.mods.fml.common.network.FMLNetworkEvent;
import cpw.mods.fml.common.network.NetworkRegistry;
import cpw.mods.fml.common.network.internal.FMLProxyPacket;
-import cpw.mods.fml.relauncher.Side;
import io.netty.buffer.ByteBuf;
+import kamkeel.network.AbstractPacket;
+import kamkeel.network.PacketChannel;
import kamkeel.network.enums.EnumPacketType;
-import kamkeel.util.ByteBufUtils;
-import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.network.NetHandlerPlayServer;
import noppes.npcs.CustomNpcs;
+import java.io.IOException;
import java.util.*;
public final class PacketHandler {
@@ -34,16 +34,8 @@ public final class PacketHandler {
packetChannels.add(INFO_PACKET);
packetChannels.add(DATA_PACKET);
packetChannels.add(CLIENT_PACKET);
+ packetChannels.add(LARGE_PACKET);
this.registerChannels();
-
- // Register Info Packets
-
- // Register Data Packets
-
- // Register Client Packets
-
- // Register Packets
- // map.put(PingPacket.packetName, new PingPacket());
}
public void registerChannels() {
@@ -73,4 +65,93 @@ public final class PacketHandler {
}
return packetChannel;
}
+
+ public FMLEventChannel getEventChannel(AbstractPacket abstractPacket){
+ return channels.get(getPacketChannel(abstractPacket.getChannel().getChannelType()));
+ }
+
+ @SubscribeEvent
+ public void onServerPacket(FMLNetworkEvent.ServerCustomPacketEvent event) {
+ try {
+ handlePacket(event.packet, ((NetHandlerPlayServer) event.handler).playerEntity);
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ }
+
+ @SubscribeEvent
+ public void onClientPacket(FMLNetworkEvent.ClientCustomPacketEvent event) {
+ try {
+ handlePacket(event.packet, CustomNpcs.proxy.getPlayer());
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ }
+
+ private void handlePacket(FMLProxyPacket packet, EntityPlayer player) {
+ ByteBuf buf = packet.payload();
+ try {
+ int channelTypeOrdinal = buf.readInt();
+ int packetTypeOrdinal = buf.readInt();
+
+ EnumPacketType channelType = EnumPacketType.values()[channelTypeOrdinal];
+ PacketChannel packetChannel = getPacketChannel(channelType);
+
+ AbstractPacket abstractPacket = packetChannel.packets.get(packetTypeOrdinal);
+ if (abstractPacket != null) {
+ try {
+ abstractPacket.receiveData(buf, player);
+ } catch (IOException e) {
+ e.printStackTrace();
+ }
+ }
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ }
+
+ public void sendToPlayer(AbstractPacket packet, EntityPlayerMP player) {
+ try {
+ FMLProxyPacket proxyPacket = packet.generatePacket();
+ getEventChannel(packet).sendTo(proxyPacket, player);
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ }
+
+ public void sendToServer(AbstractPacket packet) {
+ try {
+ FMLProxyPacket proxyPacket = packet.generatePacket();
+ getEventChannel(packet).sendToServer(proxyPacket);
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ }
+
+ public void sendToAll(AbstractPacket packet) {
+ try {
+ FMLProxyPacket proxyPacket = packet.generatePacket();
+ getEventChannel(packet).sendToAll(proxyPacket);
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ }
+
+ public void sendToAllAround(AbstractPacket packet, NetworkRegistry.TargetPoint point) {
+ try {
+ FMLProxyPacket proxyPacket = packet.generatePacket();
+ getEventChannel(packet).sendToAllAround(proxyPacket, point);
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ }
+
+ public void sendToDimension(AbstractPacket packet, int dimensionId) {
+ try {
+ FMLProxyPacket proxyPacket = packet.generatePacket();
+ getEventChannel(packet).sendToDimension(proxyPacket, dimensionId);
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ }
}
diff --git a/src/main/java/kamkeel/network/enums/EnumClientPacket.java b/src/main/java/kamkeel/network/enums/EnumClientPacket.java
index 4dd58bfcf..6ae61ad6e 100644
--- a/src/main/java/kamkeel/network/enums/EnumClientPacket.java
+++ b/src/main/java/kamkeel/network/enums/EnumClientPacket.java
@@ -20,9 +20,7 @@ public enum EnumClientPacket {
DELETE_NPC,
SCROLL_LIST,
SCROLL_DATA,
- SCROLL_DATA_PART,
SCROLL_GROUP,
- SCROLL_GROUP_PART,
SCROLL_SELECTED,
GUI_REDSTONE,
GUI_WAYPOINT,
diff --git a/src/main/java/kamkeel/network/packets/client/ConfigPacket.java b/src/main/java/kamkeel/network/packets/client/ConfigCommandPacket.java
similarity index 91%
rename from src/main/java/kamkeel/network/packets/client/ConfigPacket.java
rename to src/main/java/kamkeel/network/packets/client/ConfigCommandPacket.java
index d2b7f075c..09f1c91dd 100644
--- a/src/main/java/kamkeel/network/packets/client/ConfigPacket.java
+++ b/src/main/java/kamkeel/network/packets/client/ConfigCommandPacket.java
@@ -14,10 +14,10 @@ import net.minecraft.util.ChatComponentTranslation;
import java.io.IOException;
-public final class ConfigPacket extends AbstractPacket {
- public static final String packetName = "Client|Config";
+public final class ConfigCommandPacket extends AbstractPacket {
+ public static final String packetName = "Client|ConfigCommand";
- public ConfigPacket() {}
+ public ConfigCommandPacket() {}
@Override
public Enum getType() {
diff --git a/src/main/java/kamkeel/network/packets/client/DBCFormPacket.java b/src/main/java/kamkeel/network/packets/client/DBCFormPacket.java
index e0c11af5b..0a4432f79 100644
--- a/src/main/java/kamkeel/network/packets/client/DBCFormPacket.java
+++ b/src/main/java/kamkeel/network/packets/client/DBCFormPacket.java
@@ -6,7 +6,7 @@ import kamkeel.network.PacketChannel;
import kamkeel.network.PacketHandler;
import kamkeel.network.enums.EnumClientPacket;
import net.minecraft.entity.player.EntityPlayer;
-import noppes.npcs.NoppesUtil;
+import noppes.npcs.client.NoppesUtil;
import java.io.IOException;
diff --git a/src/main/java/kamkeel/network/packets/client/LargeNBTEndPacket.java b/src/main/java/kamkeel/network/packets/client/LargeNBTEndPacket.java
index 19dfe7a1f..061ccf419 100644
--- a/src/main/java/kamkeel/network/packets/client/LargeNBTEndPacket.java
+++ b/src/main/java/kamkeel/network/packets/client/LargeNBTEndPacket.java
@@ -6,7 +6,7 @@ import kamkeel.network.PacketChannel;
import kamkeel.network.PacketHandler;
import kamkeel.network.enums.EnumClientPacket;
import net.minecraft.entity.player.EntityPlayer;
-import noppes.npcs.NoppesUtil;
+import noppes.npcs.client.NoppesUtil;
import java.io.IOException;
diff --git a/src/main/java/kamkeel/network/packets/client/LargeNBTPartPacket.java b/src/main/java/kamkeel/network/packets/client/LargeNBTPartPacket.java
index 2c4813adf..7eb8e46fe 100644
--- a/src/main/java/kamkeel/network/packets/client/LargeNBTPartPacket.java
+++ b/src/main/java/kamkeel/network/packets/client/LargeNBTPartPacket.java
@@ -6,7 +6,7 @@ import kamkeel.network.PacketChannel;
import kamkeel.network.PacketHandler;
import kamkeel.network.enums.EnumClientPacket;
import net.minecraft.entity.player.EntityPlayer;
-import noppes.npcs.NoppesUtil;
+import noppes.npcs.client.NoppesUtil;
import java.io.IOException;
diff --git a/src/main/java/kamkeel/network/packets/client/OpenBookPacket.java b/src/main/java/kamkeel/network/packets/client/OpenBookPacket.java
index 7e1c613f4..3788c9814 100644
--- a/src/main/java/kamkeel/network/packets/client/OpenBookPacket.java
+++ b/src/main/java/kamkeel/network/packets/client/OpenBookPacket.java
@@ -10,7 +10,7 @@ import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import noppes.npcs.Server;
import noppes.npcs.client.gui.player.GuiBook;
-import noppes.npcs.NoppesUtil;
+import noppes.npcs.client.NoppesUtil;
import java.io.IOException;
diff --git a/src/main/java/kamkeel/network/packets/client/PlayerUpdateSkinOverlaysPacket.java b/src/main/java/kamkeel/network/packets/client/PlayerUpdateSkinOverlaysPacket.java
index 8bb3f6e11..ee4a9a9c7 100644
--- a/src/main/java/kamkeel/network/packets/client/PlayerUpdateSkinOverlaysPacket.java
+++ b/src/main/java/kamkeel/network/packets/client/PlayerUpdateSkinOverlaysPacket.java
@@ -9,7 +9,7 @@ import net.minecraft.client.Minecraft;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.nbt.NBTTagCompound;
import noppes.npcs.Server;
-import noppes.npcs.NoppesUtil;
+import noppes.npcs.client.NoppesUtil;
import java.io.IOException;
diff --git a/src/main/java/kamkeel/network/packets/client/RolePacket.java b/src/main/java/kamkeel/network/packets/client/RolePacket.java
index 431cd25c8..41f8ae187 100644
--- a/src/main/java/kamkeel/network/packets/client/RolePacket.java
+++ b/src/main/java/kamkeel/network/packets/client/RolePacket.java
@@ -10,7 +10,7 @@ import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.nbt.NBTTagCompound;
import noppes.npcs.Server;
-import noppes.npcs.NoppesUtil;
+import noppes.npcs.client.NoppesUtil;
import noppes.npcs.entity.EntityNPCInterface;
import java.io.IOException;
diff --git a/src/main/java/kamkeel/network/packets/client/ScrollDataPacket.java b/src/main/java/kamkeel/network/packets/client/ScrollDataPacket.java
deleted file mode 100644
index 412c86daf..000000000
--- a/src/main/java/kamkeel/network/packets/client/ScrollDataPacket.java
+++ /dev/null
@@ -1,37 +0,0 @@
-package kamkeel.network.packets.client;
-
-import io.netty.buffer.ByteBuf;
-import kamkeel.network.AbstractPacket;
-import kamkeel.network.PacketChannel;
-import kamkeel.network.PacketHandler;
-import kamkeel.network.enums.EnumClientPacket;
-import net.minecraft.entity.player.EntityPlayer;
-import noppes.npcs.NoppesUtil;
-
-import java.io.IOException;
-
-public final class ScrollDataPacket extends AbstractPacket {
- public static final String packetName = "Client|ScrollData";
-
- public ScrollDataPacket() {}
-
- @Override
- public Enum getType() {
- return EnumClientPacket.SCROLL_DATA;
- }
-
- @Override
- public PacketChannel getChannel() {
- return PacketHandler.CLIENT_PACKET;
- }
-
- @Override
- public void sendData(ByteBuf out) throws IOException {
- // TODO: Send Packet
- }
-
- @Override
- public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- NoppesUtil.setScrollData(in);
- }
-}
diff --git a/src/main/java/kamkeel/network/packets/client/ScrollDataPartPacket.java b/src/main/java/kamkeel/network/packets/client/ScrollDataPartPacket.java
deleted file mode 100644
index 29c3d611a..000000000
--- a/src/main/java/kamkeel/network/packets/client/ScrollDataPartPacket.java
+++ /dev/null
@@ -1,37 +0,0 @@
-package kamkeel.network.packets.client;
-
-import io.netty.buffer.ByteBuf;
-import kamkeel.network.AbstractPacket;
-import kamkeel.network.PacketChannel;
-import kamkeel.network.PacketHandler;
-import kamkeel.network.enums.EnumClientPacket;
-import net.minecraft.entity.player.EntityPlayer;
-import noppes.npcs.NoppesUtil;
-
-import java.io.IOException;
-
-public final class ScrollDataPartPacket extends AbstractPacket {
- public static final String packetName = "Client|ScrollDataPart";
-
- public ScrollDataPartPacket() {}
-
- @Override
- public Enum getType() {
- return EnumClientPacket.SCROLL_DATA_PART;
- }
-
- @Override
- public PacketChannel getChannel() {
- return PacketHandler.CLIENT_PACKET;
- }
-
- @Override
- public void sendData(ByteBuf out) throws IOException {
- // TODO: Send Packet
- }
-
- @Override
- public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- NoppesUtil.addScrollData(in);
- }
-}
diff --git a/src/main/java/kamkeel/network/packets/client/ScrollGroupPacket.java b/src/main/java/kamkeel/network/packets/client/ScrollGroupPacket.java
deleted file mode 100644
index 60c770a3e..000000000
--- a/src/main/java/kamkeel/network/packets/client/ScrollGroupPacket.java
+++ /dev/null
@@ -1,37 +0,0 @@
-package kamkeel.network.packets.client;
-
-import io.netty.buffer.ByteBuf;
-import kamkeel.network.AbstractPacket;
-import kamkeel.network.PacketChannel;
-import kamkeel.network.PacketHandler;
-import kamkeel.network.enums.EnumClientPacket;
-import net.minecraft.entity.player.EntityPlayer;
-import noppes.npcs.NoppesUtil;
-
-import java.io.IOException;
-
-public final class ScrollGroupPacket extends AbstractPacket {
- public static final String packetName = "Client|ScrollGroup";
-
- public ScrollGroupPacket() {}
-
- @Override
- public Enum getType() {
- return EnumClientPacket.SCROLL_GROUP;
- }
-
- @Override
- public PacketChannel getChannel() {
- return PacketHandler.CLIENT_PACKET;
- }
-
- @Override
- public void sendData(ByteBuf out) throws IOException {
- // TODO: Send Packet
- }
-
- @Override
- public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- NoppesUtil.setScrollGroup(in);
- }
-}
diff --git a/src/main/java/kamkeel/network/packets/client/ScrollGroupPartPacket.java b/src/main/java/kamkeel/network/packets/client/ScrollGroupPartPacket.java
deleted file mode 100644
index 16bcabd76..000000000
--- a/src/main/java/kamkeel/network/packets/client/ScrollGroupPartPacket.java
+++ /dev/null
@@ -1,37 +0,0 @@
-package kamkeel.network.packets.client;
-
-import io.netty.buffer.ByteBuf;
-import kamkeel.network.AbstractPacket;
-import kamkeel.network.PacketChannel;
-import kamkeel.network.PacketHandler;
-import kamkeel.network.enums.EnumClientPacket;
-import net.minecraft.entity.player.EntityPlayer;
-import noppes.npcs.NoppesUtil;
-
-import java.io.IOException;
-
-public final class ScrollGroupPartPacket extends AbstractPacket {
- public static final String packetName = "Client|ScrollGroupPart";
-
- public ScrollGroupPartPacket() {}
-
- @Override
- public Enum getType() {
- return EnumClientPacket.SCROLL_GROUP_PART;
- }
-
- @Override
- public PacketChannel getChannel() {
- return PacketHandler.CLIENT_PACKET;
- }
-
- @Override
- public void sendData(ByteBuf out) throws IOException {
- // TODO: Send Packet
- }
-
- @Override
- public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- NoppesUtil.addScrollGroup(in);
- }
-}
diff --git a/src/main/java/kamkeel/network/packets/client/ScrollListPacket.java b/src/main/java/kamkeel/network/packets/client/ScrollListPacket.java
deleted file mode 100644
index 531899ac4..000000000
--- a/src/main/java/kamkeel/network/packets/client/ScrollListPacket.java
+++ /dev/null
@@ -1,37 +0,0 @@
-package kamkeel.network.packets.client;
-
-import io.netty.buffer.ByteBuf;
-import kamkeel.network.AbstractPacket;
-import kamkeel.network.PacketChannel;
-import kamkeel.network.PacketHandler;
-import kamkeel.network.enums.EnumClientPacket;
-import net.minecraft.entity.player.EntityPlayer;
-import noppes.npcs.client.NoppesUtil;
-
-import java.io.IOException;
-
-public final class ScrollListPacket extends AbstractPacket {
- public static final String packetName = "Client|ScrollList";
-
- public ScrollListPacket() {}
-
- @Override
- public Enum getType() {
- return EnumClientPacket.SCROLL_LIST;
- }
-
- @Override
- public PacketChannel getChannel() {
- return PacketHandler.CLIENT_PACKET;
- }
-
- @Override
- public void sendData(ByteBuf out) throws IOException {
- // TODO: Send Packet
- }
-
- @Override
- public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- NoppesUtil.setScrollList(in);
- }
-}
diff --git a/src/main/java/kamkeel/network/packets/client/ClonerPacket.java b/src/main/java/kamkeel/network/packets/client/gui/ClonerGUIPacket.java
similarity index 87%
rename from src/main/java/kamkeel/network/packets/client/ClonerPacket.java
rename to src/main/java/kamkeel/network/packets/client/gui/ClonerGUIPacket.java
index f4ae249fb..4d18cc63a 100644
--- a/src/main/java/kamkeel/network/packets/client/ClonerPacket.java
+++ b/src/main/java/kamkeel/network/packets/client/gui/ClonerGUIPacket.java
@@ -1,4 +1,4 @@
-package kamkeel.network.packets.client;
+package kamkeel.network.packets.client.gui;
import io.netty.buffer.ByteBuf;
import kamkeel.network.AbstractPacket;
@@ -11,10 +11,10 @@ import noppes.npcs.constants.EnumGuiType;
import java.io.IOException;
-public final class ClonerPacket extends AbstractPacket {
+public final class ClonerGUIPacket extends AbstractPacket {
public static final String packetName = "Client|Cloner";
- public ClonerPacket() {}
+ public ClonerGUIPacket() {}
@Override
public Enum getType() {
diff --git a/src/main/java/kamkeel/network/packets/client/ClonePacket.java b/src/main/java/kamkeel/network/packets/client/gui/GUIClonerPacket.java
similarity index 69%
rename from src/main/java/kamkeel/network/packets/client/ClonePacket.java
rename to src/main/java/kamkeel/network/packets/client/gui/GUIClonerPacket.java
index 1719d2a20..e69b15463 100644
--- a/src/main/java/kamkeel/network/packets/client/ClonePacket.java
+++ b/src/main/java/kamkeel/network/packets/client/gui/GUIClonerPacket.java
@@ -1,5 +1,6 @@
-package kamkeel.network.packets.client;
+package kamkeel.network.packets.client.gui;
+import cpw.mods.fml.relauncher.Side;
import io.netty.buffer.ByteBuf;
import kamkeel.network.AbstractPacket;
import kamkeel.network.PacketChannel;
@@ -7,16 +8,19 @@ import kamkeel.network.PacketHandler;
import kamkeel.network.enums.EnumClientPacket;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.nbt.NBTTagCompound;
+import noppes.npcs.CustomNpcs;
import noppes.npcs.Server;
-import noppes.npcs.client.gui.player.GuiNpcMobSpawnerAdd;
-import noppes.npcs.NoppesUtil;
+import noppes.npcs.client.NoppesUtil;
+import noppes.npcs.client.gui.GuiNpcMobSpawnerAdd;
import java.io.IOException;
-public final class ClonePacket extends AbstractPacket {
+public final class GUIClonerPacket extends AbstractPacket {
public static final String packetName = "Client|Clone";
- public ClonePacket() {}
+ public GUIClonerPacket() {}
+
+ public GUIClonerPacket(boolean ok) {}
@Override
public Enum getType() {
@@ -35,6 +39,8 @@ public final class ClonePacket extends AbstractPacket {
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ if(CustomNpcs.side() != Side.CLIENT)
+ return;
NBTTagCompound nbt = Server.readNBT(in);
NoppesUtil.openGUI(player, new GuiNpcMobSpawnerAdd(nbt));
}
diff --git a/src/main/java/kamkeel/network/packets/client/gui/GuiRedstonePacket.java b/src/main/java/kamkeel/network/packets/client/gui/GuiRedstonePacket.java
index 3acf4e559..d12bbfd60 100644
--- a/src/main/java/kamkeel/network/packets/client/gui/GuiRedstonePacket.java
+++ b/src/main/java/kamkeel/network/packets/client/gui/GuiRedstonePacket.java
@@ -8,7 +8,7 @@ import kamkeel.network.enums.EnumClientPacket;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.nbt.NBTTagCompound;
import noppes.npcs.Server;
-import noppes.npcs.NoppesUtil;
+import noppes.npcs.client.NoppesUtil;
import java.io.IOException;
diff --git a/src/main/java/kamkeel/network/packets/client/gui/GuiWaypointPacket.java b/src/main/java/kamkeel/network/packets/client/gui/GuiWaypointPacket.java
index 91a4ad0d4..5905b517e 100644
--- a/src/main/java/kamkeel/network/packets/client/gui/GuiWaypointPacket.java
+++ b/src/main/java/kamkeel/network/packets/client/gui/GuiWaypointPacket.java
@@ -8,7 +8,7 @@ import kamkeel.network.enums.EnumClientPacket;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.nbt.NBTTagCompound;
import noppes.npcs.Server;
-import noppes.npcs.NoppesUtil;
+import noppes.npcs.client.NoppesUtil;
import java.io.IOException;
diff --git a/src/main/java/kamkeel/network/packets/client/gui/IsGuiOpenPacket.java b/src/main/java/kamkeel/network/packets/client/gui/IsGuiOpenPacket.java
index 54f0c905c..20a04f1ca 100644
--- a/src/main/java/kamkeel/network/packets/client/gui/IsGuiOpenPacket.java
+++ b/src/main/java/kamkeel/network/packets/client/gui/IsGuiOpenPacket.java
@@ -7,7 +7,7 @@ import kamkeel.network.PacketHandler;
import kamkeel.network.enums.EnumClientPacket;
import net.minecraft.client.Minecraft;
import net.minecraft.entity.player.EntityPlayer;
-import noppes.npcs.NoppesUtil;
+import noppes.npcs.client.NoppesUtil;
import java.io.IOException;
diff --git a/src/main/java/kamkeel/network/packets/client/ContinueSoundsPacket.java b/src/main/java/kamkeel/network/packets/client/sound/ContinueSoundsPacket.java
similarity index 95%
rename from src/main/java/kamkeel/network/packets/client/ContinueSoundsPacket.java
rename to src/main/java/kamkeel/network/packets/client/sound/ContinueSoundsPacket.java
index 16dd9319c..f6de38442 100644
--- a/src/main/java/kamkeel/network/packets/client/ContinueSoundsPacket.java
+++ b/src/main/java/kamkeel/network/packets/client/sound/ContinueSoundsPacket.java
@@ -1,4 +1,4 @@
-package kamkeel.network.packets.client;
+package kamkeel.network.packets.client.sound;
import io.netty.buffer.ByteBuf;
import kamkeel.network.AbstractPacket;
diff --git a/src/main/java/kamkeel/network/packets/client/PauseSoundsPacket.java b/src/main/java/kamkeel/network/packets/client/sound/PauseSoundsPacket.java
similarity index 95%
rename from src/main/java/kamkeel/network/packets/client/PauseSoundsPacket.java
rename to src/main/java/kamkeel/network/packets/client/sound/PauseSoundsPacket.java
index 8693a67f2..297e9e6b6 100644
--- a/src/main/java/kamkeel/network/packets/client/PauseSoundsPacket.java
+++ b/src/main/java/kamkeel/network/packets/client/sound/PauseSoundsPacket.java
@@ -1,4 +1,4 @@
-package kamkeel.network.packets.client;
+package kamkeel.network.packets.client.sound;
import io.netty.buffer.ByteBuf;
import kamkeel.network.AbstractPacket;
diff --git a/src/main/java/kamkeel/network/packets/client/PlayMusicPacket.java b/src/main/java/kamkeel/network/packets/client/sound/PlayMusicPacket.java
similarity index 95%
rename from src/main/java/kamkeel/network/packets/client/PlayMusicPacket.java
rename to src/main/java/kamkeel/network/packets/client/sound/PlayMusicPacket.java
index c12770bc0..e0c8fe9b5 100644
--- a/src/main/java/kamkeel/network/packets/client/PlayMusicPacket.java
+++ b/src/main/java/kamkeel/network/packets/client/sound/PlayMusicPacket.java
@@ -1,4 +1,4 @@
-package kamkeel.network.packets.client;
+package kamkeel.network.packets.client.sound;
import io.netty.buffer.ByteBuf;
import kamkeel.network.AbstractPacket;
diff --git a/src/main/java/kamkeel/network/packets/client/PlaySoundPacket.java b/src/main/java/kamkeel/network/packets/client/sound/PlaySoundPacket.java
similarity index 96%
rename from src/main/java/kamkeel/network/packets/client/PlaySoundPacket.java
rename to src/main/java/kamkeel/network/packets/client/sound/PlaySoundPacket.java
index 7f2996508..f0ed27cdc 100644
--- a/src/main/java/kamkeel/network/packets/client/PlaySoundPacket.java
+++ b/src/main/java/kamkeel/network/packets/client/sound/PlaySoundPacket.java
@@ -1,4 +1,4 @@
-package kamkeel.network.packets.client;
+package kamkeel.network.packets.client.sound;
import io.netty.buffer.ByteBuf;
import kamkeel.network.AbstractPacket;
diff --git a/src/main/java/kamkeel/network/packets/client/PlaySoundToNoIdPacket.java b/src/main/java/kamkeel/network/packets/client/sound/PlaySoundToNoIdPacket.java
similarity index 96%
rename from src/main/java/kamkeel/network/packets/client/PlaySoundToNoIdPacket.java
rename to src/main/java/kamkeel/network/packets/client/sound/PlaySoundToNoIdPacket.java
index 00b052338..a2b53fee6 100644
--- a/src/main/java/kamkeel/network/packets/client/PlaySoundToNoIdPacket.java
+++ b/src/main/java/kamkeel/network/packets/client/sound/PlaySoundToNoIdPacket.java
@@ -1,4 +1,4 @@
-package kamkeel.network.packets.client;
+package kamkeel.network.packets.client.sound;
import io.netty.buffer.ByteBuf;
import kamkeel.network.AbstractPacket;
diff --git a/src/main/java/kamkeel/network/packets/client/PlaySoundToPacket.java b/src/main/java/kamkeel/network/packets/client/sound/PlaySoundToPacket.java
similarity index 96%
rename from src/main/java/kamkeel/network/packets/client/PlaySoundToPacket.java
rename to src/main/java/kamkeel/network/packets/client/sound/PlaySoundToPacket.java
index da0baead2..5c651de5c 100644
--- a/src/main/java/kamkeel/network/packets/client/PlaySoundToPacket.java
+++ b/src/main/java/kamkeel/network/packets/client/sound/PlaySoundToPacket.java
@@ -1,4 +1,4 @@
-package kamkeel.network.packets.client;
+package kamkeel.network.packets.client.sound;
import io.netty.buffer.ByteBuf;
import kamkeel.network.AbstractPacket;
diff --git a/src/main/java/kamkeel/network/packets/large/LargeScrollDataPacket.java b/src/main/java/kamkeel/network/packets/large/LargeScrollDataPacket.java
new file mode 100644
index 000000000..acdd6757d
--- /dev/null
+++ b/src/main/java/kamkeel/network/packets/large/LargeScrollDataPacket.java
@@ -0,0 +1,49 @@
+package kamkeel.network.packets.large;
+
+import io.netty.buffer.ByteBuf;
+import kamkeel.network.LargeAbstractPacket;
+import kamkeel.network.PacketChannel;
+import kamkeel.network.PacketHandler;
+import kamkeel.network.enums.EnumClientPacket;
+import kamkeel.util.ByteBufUtils;
+import net.minecraft.entity.player.EntityPlayer;
+import noppes.npcs.client.NoppesUtil;
+
+import java.io.IOException;
+import java.util.Map;
+
+public final class LargeScrollDataPacket extends LargeAbstractPacket {
+ public static final String packetName = "Large|ScrollData";
+
+ private Map data;
+
+ public LargeScrollDataPacket() {}
+
+ public LargeScrollDataPacket(Map data) {
+ this.data = data;
+ }
+
+ @Override
+ public Enum getType() {
+ return EnumClientPacket.SCROLL_DATA;
+ }
+
+ @Override
+ public PacketChannel getChannel() {
+ return PacketHandler.LARGE_PACKET;
+ }
+
+ @Override
+ public void writeData(ByteBuf out) throws IOException {
+ out.writeInt(data.size());
+ for (Map.Entry entry : data.entrySet()) {
+ ByteBufUtils.writeString(out, entry.getKey());
+ out.writeInt(entry.getValue());
+ }
+ }
+
+ @Override
+ public void handleData(ByteBuf data, EntityPlayer player) throws IOException {
+ NoppesUtil.setScrollData(data);
+ }
+}
diff --git a/src/main/java/kamkeel/network/packets/large/LargeScrollGroupPacket.java b/src/main/java/kamkeel/network/packets/large/LargeScrollGroupPacket.java
new file mode 100644
index 000000000..95384acfb
--- /dev/null
+++ b/src/main/java/kamkeel/network/packets/large/LargeScrollGroupPacket.java
@@ -0,0 +1,49 @@
+package kamkeel.network.packets.large;
+
+import io.netty.buffer.ByteBuf;
+import kamkeel.network.LargeAbstractPacket;
+import kamkeel.network.PacketChannel;
+import kamkeel.network.PacketHandler;
+import kamkeel.network.enums.EnumClientPacket;
+import kamkeel.util.ByteBufUtils;
+import net.minecraft.entity.player.EntityPlayer;
+import noppes.npcs.client.NoppesUtil;
+
+import java.io.IOException;
+import java.util.Map;
+
+public final class LargeScrollGroupPacket extends LargeAbstractPacket {
+ public static final String packetName = "Large|ScrollGroup";
+
+ private Map data;
+
+ public LargeScrollGroupPacket() {}
+
+ public LargeScrollGroupPacket(Map data) {
+ this.data = data;
+ }
+
+ @Override
+ public Enum getType() {
+ return EnumClientPacket.SCROLL_GROUP;
+ }
+
+ @Override
+ public PacketChannel getChannel() {
+ return PacketHandler.LARGE_PACKET;
+ }
+
+ @Override
+ public void writeData(ByteBuf out) throws IOException {
+ out.writeInt(data.size());
+ for (Map.Entry entry : data.entrySet()) {
+ ByteBufUtils.writeString(out, entry.getKey());
+ out.writeInt(entry.getValue());
+ }
+ }
+
+ @Override
+ public void handleData(ByteBuf data, EntityPlayer player) throws IOException {
+ NoppesUtil.setScrollGroup(data);
+ }
+}
diff --git a/src/main/java/kamkeel/network/packets/large/LargeScrollListPacket.java b/src/main/java/kamkeel/network/packets/large/LargeScrollListPacket.java
new file mode 100644
index 000000000..3fc99cff0
--- /dev/null
+++ b/src/main/java/kamkeel/network/packets/large/LargeScrollListPacket.java
@@ -0,0 +1,49 @@
+// src/main/java/kamkeel/network/packets/large/LargeScrollListPacket.java
+package kamkeel.network.packets.large;
+
+import io.netty.buffer.ByteBuf;
+import kamkeel.network.LargeAbstractPacket;
+import kamkeel.network.PacketChannel;
+import kamkeel.network.PacketHandler;
+import kamkeel.network.enums.EnumClientPacket;
+import kamkeel.util.ByteBufUtils;
+import net.minecraft.entity.player.EntityPlayer;
+import noppes.npcs.client.NoppesUtil;
+
+import java.io.IOException;
+import java.util.List;
+
+public final class LargeScrollListPacket extends LargeAbstractPacket {
+ public static final String packetName = "Large|ScrollList";
+
+ private List data;
+
+ public LargeScrollListPacket() {}
+
+ public LargeScrollListPacket(List data) {
+ this.data = data;
+ }
+
+ @Override
+ public Enum getType() {
+ return EnumClientPacket.SCROLL_LIST;
+ }
+
+ @Override
+ public PacketChannel getChannel() {
+ return PacketHandler.LARGE_PACKET;
+ }
+
+ @Override
+ public void writeData(ByteBuf out) throws IOException {
+ out.writeInt(data.size());
+ for (String entry : data) {
+ ByteBufUtils.writeString(out, entry);
+ }
+ }
+
+ @Override
+ public void handleData(ByteBuf data, EntityPlayer player) throws IOException {
+ NoppesUtil.setScrollList(data);
+ }
+}
diff --git a/src/main/java/kamkeel/util/ByteBufUtils.java b/src/main/java/kamkeel/util/ByteBufUtils.java
index 35be971ff..c5e4dee1d 100644
--- a/src/main/java/kamkeel/util/ByteBufUtils.java
+++ b/src/main/java/kamkeel/util/ByteBufUtils.java
@@ -16,6 +16,62 @@ import java.util.Map;
public class ByteBufUtils extends cpw.mods.fml.common.network.ByteBufUtils {
+ // TODO: Modify this to check if it a large packet so we don't need the condition at the bottom or make two
+ // differnt methods one for fillBuffer normal and one fillLargeBuffer
+ public static boolean fillBuffer(ByteBuf buffer, Enum enu, Object... obs) throws IOException{
+ buffer.writeInt(enu.ordinal());
+ for(Object ob : obs){
+ if(ob == null)
+ continue;
+ if(ob instanceof Map){
+ Map map = (Map) ob;
+
+ buffer.writeInt(map.size());
+ for(String key : map.keySet()){
+ int value = map.get(key);
+ buffer.writeInt(value);
+ writeString(buffer, key);
+ }
+ }
+ else if(ob instanceof MerchantRecipeList)
+ ((MerchantRecipeList)ob).func_151391_a(new PacketBuffer(buffer));
+ else if(ob instanceof List){
+ List list = (List) ob;
+ buffer.writeInt(list.size());
+ for(String s : list)
+ writeString(buffer, s);
+ }
+ else if(ob instanceof Enum)
+ buffer.writeInt(((Enum>) ob).ordinal());
+ else if(ob instanceof Integer)
+ buffer.writeInt((Integer) ob);
+ else if(ob instanceof Boolean)
+ buffer.writeBoolean((Boolean) ob);
+ else if(ob instanceof String)
+ writeString(buffer, (String) ob);
+ else if(ob instanceof Float)
+ buffer.writeFloat((Float) ob);
+ else if(ob instanceof Long)
+ buffer.writeLong((Long) ob);
+ else if(ob instanceof Double)
+ buffer.writeDouble((Double) ob);
+ else if (ob instanceof byte[]) {
+ // Write byte array length followed by bytes
+ byte[] byteArray = (byte[]) ob;
+ buffer.writeShort((short) byteArray.length);
+ buffer.writeBytes(byteArray);
+ }
+ else if(ob instanceof NBTTagCompound)
+ writeNBT(buffer, (NBTTagCompound) ob);
+ }
+ if(buffer.array().length >= 32767){
+ LogWriter.error("Packet " + enu + " was too big to be send");
+ LogWriter.script( "Issue occurred with the following Packet - " + enu + ":\n" + Arrays.toString(obs));
+ return false;
+ }
+ return true;
+ }
+
public static void writeIntArray(ByteBuf buffer, int[] arr) {
buffer.writeInt(arr.length);
for (int i : arr) {
From 476efb031717dfcc5980cd2a0bd431a4978e1f8e Mon Sep 17 00:00:00 2001
From: Kam
Date: Tue, 28 Jan 2025 18:19:58 -0500
Subject: [PATCH 010/357] Register Large Packets
---
src/main/java/kamkeel/network/PacketChannel.java | 4 ++--
src/main/java/kamkeel/network/PacketHandler.java | 8 ++++++++
2 files changed, 10 insertions(+), 2 deletions(-)
diff --git a/src/main/java/kamkeel/network/PacketChannel.java b/src/main/java/kamkeel/network/PacketChannel.java
index 19f677c72..05f656294 100644
--- a/src/main/java/kamkeel/network/PacketChannel.java
+++ b/src/main/java/kamkeel/network/PacketChannel.java
@@ -33,7 +33,7 @@ public class PacketChannel {
this.channelType = channelType;
}
- public void registerPacket(Enum ord, AbstractPacket packet) {
- this.packets.put(ord.ordinal(), packet);
+ public void registerPacket(AbstractPacket packet) {
+ this.packets.put(packet.getType().ordinal(), packet);
}
}
diff --git a/src/main/java/kamkeel/network/PacketHandler.java b/src/main/java/kamkeel/network/PacketHandler.java
index 5864fa6a5..c4c718e77 100644
--- a/src/main/java/kamkeel/network/PacketHandler.java
+++ b/src/main/java/kamkeel/network/PacketHandler.java
@@ -9,6 +9,9 @@ import io.netty.buffer.ByteBuf;
import kamkeel.network.AbstractPacket;
import kamkeel.network.PacketChannel;
import kamkeel.network.enums.EnumPacketType;
+import kamkeel.network.packets.large.LargeScrollDataPacket;
+import kamkeel.network.packets.large.LargeScrollGroupPacket;
+import kamkeel.network.packets.large.LargeScrollListPacket;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.network.NetHandlerPlayServer;
@@ -36,6 +39,11 @@ public final class PacketHandler {
packetChannels.add(CLIENT_PACKET);
packetChannels.add(LARGE_PACKET);
this.registerChannels();
+
+ // Large Packets
+ LARGE_PACKET.registerPacket(new LargeScrollGroupPacket());
+ LARGE_PACKET.registerPacket(new LargeScrollDataPacket());
+ LARGE_PACKET.registerPacket(new LargeScrollListPacket());
}
public void registerChannels() {
From 19c31b985d11f9a9f7167a6dfd00b875d0f17de9 Mon Sep 17 00:00:00 2001
From: Kam
Date: Tue, 28 Jan 2025 18:25:30 -0500
Subject: [PATCH 011/357] Large Abstract Packet By UUID
---
.../kamkeel/network/LargeAbstractPacket.java | 24 +++++++++++--------
1 file changed, 14 insertions(+), 10 deletions(-)
diff --git a/src/main/java/kamkeel/network/LargeAbstractPacket.java b/src/main/java/kamkeel/network/LargeAbstractPacket.java
index 067e89945..bd748225c 100644
--- a/src/main/java/kamkeel/network/LargeAbstractPacket.java
+++ b/src/main/java/kamkeel/network/LargeAbstractPacket.java
@@ -1,33 +1,33 @@
-// src/main/java/kamkeel/network/LargeAbstractPacket.java
package kamkeel.network;
-
import io.netty.buffer.ByteBuf;
import io.netty.buffer.Unpooled;
+import kamkeel.util.ByteBufUtils;
import net.minecraft.entity.player.EntityPlayer;
+import noppes.npcs.client.NoppesUtil;
import java.io.IOException;
import java.util.HashMap;
import java.util.Map;
+import java.util.UUID;
public abstract class LargeAbstractPacket extends AbstractPacket {
- private static final int CHUNK_SIZE = 30000;
- private static final Map packetChunks = new HashMap<>();
- private static final Map receivedChunks = new HashMap<>();
-
- public abstract void handleData(ByteBuf data, EntityPlayer player) throws IOException;
+ private static final int CHUNK_SIZE = 10000;
+ private static final Map packetChunks = new HashMap<>();
+ private static final Map receivedChunks = new HashMap<>();
@Override
public void sendData(ByteBuf out) throws IOException {
ByteBuf data = Unpooled.buffer();
writeData(data);
int totalSize = data.readableBytes();
- int packetId = this.hashCode(); // Unique ID for this packet
+ UUID packetId = UUID.randomUUID(); // Unique ID for this packet
int totalChunks = (int) Math.ceil((double) totalSize / CHUNK_SIZE);
for (int i = 0; i < totalSize; i += CHUNK_SIZE) {
int chunkSize = Math.min(CHUNK_SIZE, totalSize - i);
ByteBuf chunk = data.readBytes(chunkSize);
- out.writeInt(packetId);
+ out.writeLong(packetId.getMostSignificantBits());
+ out.writeLong(packetId.getLeastSignificantBits());
out.writeInt(totalSize);
out.writeInt(i);
out.writeInt(totalChunks);
@@ -37,7 +37,9 @@ public abstract class LargeAbstractPacket extends AbstractPacket {
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- int packetId = in.readInt();
+ long mostSigBits = in.readLong();
+ long leastSigBits = in.readLong();
+ UUID packetId = new UUID(mostSigBits, leastSigBits);
int totalSize = in.readInt();
int offset = in.readInt();
int totalChunks = in.readInt();
@@ -56,4 +58,6 @@ public abstract class LargeAbstractPacket extends AbstractPacket {
}
public abstract void writeData(ByteBuf out) throws IOException;
+
+ public abstract void handleData(ByteBuf data, EntityPlayer player) throws IOException;
}
From 5d41f5b939ea0c9f2c707601d87a90bd0ad0d552 Mon Sep 17 00:00:00 2001
From: Kam
Date: Wed, 29 Jan 2025 13:20:04 -0500
Subject: [PATCH 012/357] Rename Namespace to kamkeel.npcs
---
.../kamkeel/network/enums/EnumDataPacket.java | 4 ----
.../kamkeel/{ => npcs}/addon/AddonManager.java | 6 +++---
.../java/kamkeel/{ => npcs}/addon/DBCAddon.java | 3 +--
.../java/kamkeel/{ => npcs}/addon/GeckoAddon.java | 4 ++--
.../{ => npcs}/addon/client/DBCClient.java | 7 +------
.../{ => npcs}/addon/client/GeckoAddonClient.java | 2 +-
.../{ => npcs}/command/AnimationCommand.java | 2 +-
.../kamkeel/{ => npcs}/command/CloneCommand.java | 15 +++++++--------
.../{ => npcs}/command/CommandCommand.java | 2 +-
.../{ => npcs}/command/CommandKamkeel.java | 4 ++--
.../{ => npcs}/command/CommandKamkeelBase.java | 2 +-
.../kamkeel/{ => npcs}/command/ConfigCommand.java | 2 +-
.../{ => npcs}/command/DialogCategoryCommand.java | 2 +-
.../kamkeel/{ => npcs}/command/DialogCommand.java | 2 +-
.../{ => npcs}/command/FactionCommand.java | 5 ++---
.../kamkeel/{ => npcs}/command/HelpCommand.java | 2 +-
.../kamkeel/{ => npcs}/command/NpcCommand.java | 2 +-
.../{ => npcs}/command/OverlayCommand.java | 2 +-
.../{ => npcs}/command/QuestCategoryCommand.java | 2 +-
.../kamkeel/{ => npcs}/command/QuestCommand.java | 6 ++----
.../kamkeel/{ => npcs}/command/ScriptCommand.java | 2 +-
.../kamkeel/{ => npcs}/command/SlayCommand.java | 5 ++---
.../command/profile/CommandHelpProfile.java | 2 +-
.../command/profile/CommandProfile.java | 4 ++--
.../command/profile/CommandProfileBase.java | 2 +-
.../command/profile/CommandProfileChange.java | 6 +++---
.../{ => npcs}/controllers/ProfileController.java | 8 ++++----
.../{ => npcs}/controllers/data/CNPCData.java | 2 +-
.../{ => npcs}/controllers/data/IProfileData.java | 2 +-
.../{ => npcs}/controllers/data/Profile.java | 2 +-
.../kamkeel/{ => npcs}/controllers/data/Slot.java | 4 +---
.../kamkeel/{ => npcs}/developer/Developer.java | 2 +-
.../{ => npcs}/network/AbstractPacket.java | 5 +----
.../kamkeel/{ => npcs}/network/KamUtilServer.java | 6 +++---
.../{ => npcs}/network/LargeAbstractPacket.java | 4 +---
.../kamkeel/{ => npcs}/network/PacketChannel.java | 4 ++--
.../kamkeel/{ => npcs}/network/PacketHandler.java | 12 +++++-------
.../network/enums/EnumClientPacket.java | 2 +-
.../npcs/network/enums/EnumDataPacket.java | 4 ++++
.../{ => npcs}/network/enums/EnumInfoPacket.java | 2 +-
.../{ => npcs}/network/enums/EnumPacketType.java | 2 +-
.../{ => npcs}/network/packets/LoginPacket.java | 12 ++++++------
.../network/packets/client/ChatBubblePacket.java | 10 +++++-----
.../network/packets/client/ChatPacket.java | 10 +++++-----
.../packets/client/ConfigCommandPacket.java | 10 +++++-----
.../network/packets/client/DBCFormPacket.java | 10 +++++-----
.../network/packets/client/DeleteNpcPacket.java | 10 +++++-----
.../network/packets/client/DialogDummyPacket.java | 10 +++++-----
.../network/packets/client/DialogPacket.java | 10 +++++-----
.../packets/client/DisableMouseInputPacket.java | 10 +++++-----
.../network/packets/client/EditNpcPacket.java | 10 +++++-----
.../network/packets/client/LargeNBTEndPacket.java | 10 +++++-----
.../packets/client/LargeNBTPartPacket.java | 10 +++++-----
.../network/packets/client/MarkDataPacket.java | 10 +++++-----
.../network/packets/client/MessagePacket.java | 11 +++++------
.../network/packets/client/OpenBookPacket.java | 10 +++++-----
.../client/OverlayQuestTrackingPacket.java | 10 +++++-----
.../network/packets/client/ParticlePacket.java | 10 +++++-----
.../network/packets/client/PartyDataPacket.java | 10 +++++-----
.../client/PlayerUpdateSkinOverlaysPacket.java | 10 +++++-----
.../packets/client/QuestCompletionPacket.java | 10 +++++-----
.../network/packets/client/RolePacket.java | 10 +++++-----
.../packets/client/ScriptOverlayClosePacket.java | 10 +++++-----
.../packets/client/ScriptOverlayDataPacket.java | 10 +++++-----
.../packets/client/ScriptedParticlePacket.java | 10 +++++-----
.../packets/client/ScrollSelectedPacket.java | 10 +++++-----
.../packets/client/StopSoundForPacket.java | 10 +++++-----
.../network/packets/client/StopSoundsPacket.java | 10 +++++-----
.../packets/client/SwingPlayerArmPacket.java | 10 +++++-----
.../network/packets/client/TeleporterPacket.java | 10 +++++-----
.../packets/client/UpdateAnimationsPacket.java | 10 +++++-----
.../network/packets/client/UpdateNpcPacket.java | 10 +++++-----
.../packets/client/VillagerListPacket.java | 11 +++++------
.../packets/client/gui/ClonerGUIPacket.java | 10 +++++-----
.../packets/client/gui/GUIClonerPacket.java | 10 +++++-----
.../packets/client/gui/GuiClosePacket.java | 10 +++++-----
.../network/packets/client/gui/GuiDataPacket.java | 10 +++++-----
.../packets/client/gui/GuiErrorPacket.java | 10 +++++-----
.../network/packets/client/gui/GuiPacket.java | 10 +++++-----
.../packets/client/gui/GuiRedstonePacket.java | 10 +++++-----
.../packets/client/gui/GuiWaypointPacket.java | 10 +++++-----
.../packets/client/gui/IsGuiOpenPacket.java | 10 +++++-----
.../client/sound/ContinueSoundsPacket.java | 10 +++++-----
.../packets/client/sound/PauseSoundsPacket.java | 10 +++++-----
.../packets/client/sound/PlayMusicPacket.java | 10 +++++-----
.../packets/client/sound/PlaySoundPacket.java | 10 +++++-----
.../client/sound/PlaySoundToNoIdPacket.java | 10 +++++-----
.../packets/client/sound/PlaySoundToPacket.java | 10 +++++-----
.../packets/client/sync/SyncAddPacket.java | 10 +++++-----
.../packets/client/sync/SyncConfigPacket.java | 10 +++++-----
.../packets/client/sync/SyncEndPacket.java | 10 +++++-----
.../packets/client/sync/SyncPlayerPacket.java | 10 +++++-----
.../packets/client/sync/SyncRecipesAddPacket.java | 10 +++++-----
.../sync/SyncRecipesCarpentryBenchPacket.java | 10 +++++-----
.../client/sync/SyncRecipesWorkbenchPacket.java | 10 +++++-----
.../packets/client/sync/SyncRemovePacket.java | 10 +++++-----
.../packets/client/sync/SyncUpdatePacket.java | 10 +++++-----
.../packets/client/sync/SyncWeaponPacket.java | 10 +++++-----
.../packets/large/LargeScrollDataPacket.java | 12 ++++++------
.../packets/large/LargeScrollGroupPacket.java | 12 ++++++------
.../packets/large/LargeScrollListPacket.java | 12 ++++++------
.../kamkeel/{ => npcs}/util/ByteBufUtils.java | 2 +-
.../kamkeel/{ => npcs}/util/TextSplitter.java | 4 ++--
src/main/java/noppes/npcs/CustomNpcs.java | 12 ++++++------
.../java/noppes/npcs/CustomNpcsPermissions.java | 2 +-
.../java/noppes/npcs/PacketHandlerPlayer.java | 1 -
.../java/noppes/npcs/PacketHandlerServer.java | 1 -
.../noppes/npcs/ScriptPlayerEventHandler.java | 3 ---
src/main/java/noppes/npcs/ServerTickHandler.java | 2 +-
src/main/java/noppes/npcs/ai/CombatHandler.java | 2 +-
.../java/noppes/npcs/ai/EntityAIAttackTarget.java | 2 +-
.../npcs/ai/selector/NPCAttackSelector.java | 2 +-
src/main/java/noppes/npcs/client/ClientProxy.java | 3 +--
.../noppes/npcs/client/ClientTickHandler.java | 5 +----
src/main/java/noppes/npcs/client/EntityUtil.java | 4 ++--
.../npcs/client/gui/mainmenu/GuiNpcDisplay.java | 2 +-
.../npcs/client/gui/mainmenu/GuiNpcStats.java | 3 +--
.../npcs/client/gui/model/GuiCreationScreen.java | 2 +-
.../gui/player/inventory/GuiCNPCInventory.java | 2 +-
.../npcs/client/gui/util/GuiCustomScroll.java | 2 +-
.../noppes/npcs/client/gui/util/GuiNpcButton.java | 2 +-
.../npcs/client/renderer/RenderNPCInterface.java | 2 +-
.../java/noppes/npcs/config/ConfigScript.java | 4 ++--
.../noppes/npcs/controllers/SyncController.java | 2 +-
.../noppes/npcs/controllers/data/PlayerData.java | 2 +-
.../noppes/npcs/entity/EntityNPCInterface.java | 4 ++--
.../java/noppes/npcs/entity/EntityProjectile.java | 3 +--
.../client/tabs/InventoryTabCustomNpc.java | 3 +--
128 files changed, 406 insertions(+), 440 deletions(-)
delete mode 100644 src/main/java/kamkeel/network/enums/EnumDataPacket.java
rename src/main/java/kamkeel/{ => npcs}/addon/AddonManager.java (78%)
rename src/main/java/kamkeel/{ => npcs}/addon/DBCAddon.java (96%)
rename src/main/java/kamkeel/{ => npcs}/addon/GeckoAddon.java (94%)
rename src/main/java/kamkeel/{ => npcs}/addon/client/DBCClient.java (84%)
rename src/main/java/kamkeel/{ => npcs}/addon/client/GeckoAddonClient.java (97%)
rename src/main/java/kamkeel/{ => npcs}/command/AnimationCommand.java (99%)
rename src/main/java/kamkeel/{ => npcs}/command/CloneCommand.java (95%)
rename src/main/java/kamkeel/{ => npcs}/command/CommandCommand.java (98%)
rename src/main/java/kamkeel/{ => npcs}/command/CommandKamkeel.java (98%)
rename src/main/java/kamkeel/{ => npcs}/command/CommandKamkeelBase.java (99%)
rename src/main/java/kamkeel/{ => npcs}/command/ConfigCommand.java (99%)
rename src/main/java/kamkeel/{ => npcs}/command/DialogCategoryCommand.java (99%)
rename src/main/java/kamkeel/{ => npcs}/command/DialogCommand.java (99%)
rename src/main/java/kamkeel/{ => npcs}/command/FactionCommand.java (96%)
rename src/main/java/kamkeel/{ => npcs}/command/HelpCommand.java (98%)
rename src/main/java/kamkeel/{ => npcs}/command/NpcCommand.java (99%)
rename src/main/java/kamkeel/{ => npcs}/command/OverlayCommand.java (99%)
rename src/main/java/kamkeel/{ => npcs}/command/QuestCategoryCommand.java (99%)
rename src/main/java/kamkeel/{ => npcs}/command/QuestCommand.java (98%)
rename src/main/java/kamkeel/{ => npcs}/command/ScriptCommand.java (97%)
rename src/main/java/kamkeel/{ => npcs}/command/SlayCommand.java (95%)
rename src/main/java/kamkeel/{ => npcs}/command/profile/CommandHelpProfile.java (98%)
rename src/main/java/kamkeel/{ => npcs}/command/profile/CommandProfile.java (95%)
rename src/main/java/kamkeel/{ => npcs}/command/profile/CommandProfileBase.java (99%)
rename src/main/java/kamkeel/{ => npcs}/command/profile/CommandProfileChange.java (92%)
rename src/main/java/kamkeel/{ => npcs}/controllers/ProfileController.java (97%)
rename src/main/java/kamkeel/{ => npcs}/controllers/data/CNPCData.java (96%)
rename src/main/java/kamkeel/{ => npcs}/controllers/data/IProfileData.java (94%)
rename src/main/java/kamkeel/{ => npcs}/controllers/data/Profile.java (97%)
rename src/main/java/kamkeel/{ => npcs}/controllers/data/Slot.java (92%)
rename src/main/java/kamkeel/{ => npcs}/developer/Developer.java (97%)
rename src/main/java/kamkeel/{ => npcs}/network/AbstractPacket.java (88%)
rename src/main/java/kamkeel/{ => npcs}/network/KamUtilServer.java (77%)
rename src/main/java/kamkeel/{ => npcs}/network/LargeAbstractPacket.java (95%)
rename src/main/java/kamkeel/{ => npcs}/network/PacketChannel.java (91%)
rename src/main/java/kamkeel/{ => npcs}/network/PacketHandler.java (94%)
rename src/main/java/kamkeel/{ => npcs}/network/enums/EnumClientPacket.java (96%)
create mode 100644 src/main/java/kamkeel/npcs/network/enums/EnumDataPacket.java
rename src/main/java/kamkeel/{ => npcs}/network/enums/EnumInfoPacket.java (54%)
rename src/main/java/kamkeel/{ => npcs}/network/enums/EnumPacketType.java (63%)
rename src/main/java/kamkeel/{ => npcs}/network/packets/LoginPacket.java (77%)
rename src/main/java/kamkeel/{ => npcs}/network/packets/client/ChatBubblePacket.java (88%)
rename src/main/java/kamkeel/{ => npcs}/network/packets/client/ChatPacket.java (83%)
rename src/main/java/kamkeel/{ => npcs}/network/packets/client/ConfigCommandPacket.java (89%)
rename src/main/java/kamkeel/{ => npcs}/network/packets/client/DBCFormPacket.java (76%)
rename src/main/java/kamkeel/{ => npcs}/network/packets/client/DeleteNpcPacket.java (81%)
rename src/main/java/kamkeel/{ => npcs}/network/packets/client/DialogDummyPacket.java (81%)
rename src/main/java/kamkeel/{ => npcs}/network/packets/client/DialogPacket.java (83%)
rename src/main/java/kamkeel/{ => npcs}/network/packets/client/DisableMouseInputPacket.java (84%)
rename src/main/java/kamkeel/{ => npcs}/network/packets/client/EditNpcPacket.java (82%)
rename src/main/java/kamkeel/{ => npcs}/network/packets/client/LargeNBTEndPacket.java (78%)
rename src/main/java/kamkeel/{ => npcs}/network/packets/client/LargeNBTPartPacket.java (78%)
rename src/main/java/kamkeel/{ => npcs}/network/packets/client/MarkDataPacket.java (83%)
rename src/main/java/kamkeel/{ => npcs}/network/packets/client/MessagePacket.java (86%)
rename src/main/java/kamkeel/{ => npcs}/network/packets/client/OpenBookPacket.java (83%)
rename src/main/java/kamkeel/{ => npcs}/network/packets/client/OverlayQuestTrackingPacket.java (84%)
rename src/main/java/kamkeel/{ => npcs}/network/packets/client/ParticlePacket.java (76%)
rename src/main/java/kamkeel/{ => npcs}/network/packets/client/PartyDataPacket.java (87%)
rename src/main/java/kamkeel/{ => npcs}/network/packets/client/PlayerUpdateSkinOverlaysPacket.java (84%)
rename src/main/java/kamkeel/{ => npcs}/network/packets/client/QuestCompletionPacket.java (78%)
rename src/main/java/kamkeel/{ => npcs}/network/packets/client/RolePacket.java (85%)
rename src/main/java/kamkeel/{ => npcs}/network/packets/client/ScriptOverlayClosePacket.java (79%)
rename src/main/java/kamkeel/{ => npcs}/network/packets/client/ScriptOverlayDataPacket.java (83%)
rename src/main/java/kamkeel/{ => npcs}/network/packets/client/ScriptedParticlePacket.java (77%)
rename src/main/java/kamkeel/{ => npcs}/network/packets/client/ScrollSelectedPacket.java (82%)
rename src/main/java/kamkeel/{ => npcs}/network/packets/client/StopSoundForPacket.java (78%)
rename src/main/java/kamkeel/{ => npcs}/network/packets/client/StopSoundsPacket.java (77%)
rename src/main/java/kamkeel/{ => npcs}/network/packets/client/SwingPlayerArmPacket.java (77%)
rename src/main/java/kamkeel/{ => npcs}/network/packets/client/TeleporterPacket.java (78%)
rename src/main/java/kamkeel/{ => npcs}/network/packets/client/UpdateAnimationsPacket.java (92%)
rename src/main/java/kamkeel/{ => npcs}/network/packets/client/UpdateNpcPacket.java (83%)
rename src/main/java/kamkeel/{ => npcs}/network/packets/client/VillagerListPacket.java (80%)
rename src/main/java/kamkeel/{ => npcs}/network/packets/client/gui/ClonerGUIPacket.java (79%)
rename src/main/java/kamkeel/{ => npcs}/network/packets/client/gui/GUIClonerPacket.java (82%)
rename src/main/java/kamkeel/{ => npcs}/network/packets/client/gui/GuiClosePacket.java (84%)
rename src/main/java/kamkeel/{ => npcs}/network/packets/client/gui/GuiDataPacket.java (86%)
rename src/main/java/kamkeel/{ => npcs}/network/packets/client/gui/GuiErrorPacket.java (83%)
rename src/main/java/kamkeel/{ => npcs}/network/packets/client/gui/GuiPacket.java (80%)
rename src/main/java/kamkeel/{ => npcs}/network/packets/client/gui/GuiRedstonePacket.java (79%)
rename src/main/java/kamkeel/{ => npcs}/network/packets/client/gui/GuiWaypointPacket.java (79%)
rename src/main/java/kamkeel/{ => npcs}/network/packets/client/gui/IsGuiOpenPacket.java (79%)
rename src/main/java/kamkeel/{ => npcs}/network/packets/client/sound/ContinueSoundsPacket.java (77%)
rename src/main/java/kamkeel/{ => npcs}/network/packets/client/sound/PauseSoundsPacket.java (77%)
rename src/main/java/kamkeel/{ => npcs}/network/packets/client/sound/PlayMusicPacket.java (79%)
rename src/main/java/kamkeel/{ => npcs}/network/packets/client/sound/PlaySoundPacket.java (80%)
rename src/main/java/kamkeel/{ => npcs}/network/packets/client/sound/PlaySoundToNoIdPacket.java (82%)
rename src/main/java/kamkeel/{ => npcs}/network/packets/client/sound/PlaySoundToPacket.java (82%)
rename src/main/java/kamkeel/{ => npcs}/network/packets/client/sync/SyncAddPacket.java (80%)
rename src/main/java/kamkeel/{ => npcs}/network/packets/client/sync/SyncConfigPacket.java (79%)
rename src/main/java/kamkeel/{ => npcs}/network/packets/client/sync/SyncEndPacket.java (80%)
rename src/main/java/kamkeel/{ => npcs}/network/packets/client/sync/SyncPlayerPacket.java (77%)
rename src/main/java/kamkeel/{ => npcs}/network/packets/client/sync/SyncRecipesAddPacket.java (85%)
rename src/main/java/kamkeel/{ => npcs}/network/packets/client/sync/SyncRecipesCarpentryBenchPacket.java (79%)
rename src/main/java/kamkeel/{ => npcs}/network/packets/client/sync/SyncRecipesWorkbenchPacket.java (79%)
rename src/main/java/kamkeel/{ => npcs}/network/packets/client/sync/SyncRemovePacket.java (78%)
rename src/main/java/kamkeel/{ => npcs}/network/packets/client/sync/SyncUpdatePacket.java (80%)
rename src/main/java/kamkeel/{ => npcs}/network/packets/client/sync/SyncWeaponPacket.java (84%)
rename src/main/java/kamkeel/{ => npcs}/network/packets/large/LargeScrollDataPacket.java (80%)
rename src/main/java/kamkeel/{ => npcs}/network/packets/large/LargeScrollGroupPacket.java (80%)
rename src/main/java/kamkeel/{ => npcs}/network/packets/large/LargeScrollListPacket.java (80%)
rename src/main/java/kamkeel/{ => npcs}/util/ByteBufUtils.java (99%)
rename src/main/java/kamkeel/{ => npcs}/util/TextSplitter.java (97%)
diff --git a/src/main/java/kamkeel/network/enums/EnumDataPacket.java b/src/main/java/kamkeel/network/enums/EnumDataPacket.java
deleted file mode 100644
index 2481eb446..000000000
--- a/src/main/java/kamkeel/network/enums/EnumDataPacket.java
+++ /dev/null
@@ -1,4 +0,0 @@
-package kamkeel.network.enums;
-
-public enum EnumDataPacket {
-}
diff --git a/src/main/java/kamkeel/addon/AddonManager.java b/src/main/java/kamkeel/npcs/addon/AddonManager.java
similarity index 78%
rename from src/main/java/kamkeel/addon/AddonManager.java
rename to src/main/java/kamkeel/npcs/addon/AddonManager.java
index 52aabb0f6..24b58dc3e 100644
--- a/src/main/java/kamkeel/addon/AddonManager.java
+++ b/src/main/java/kamkeel/npcs/addon/AddonManager.java
@@ -1,7 +1,7 @@
-package kamkeel.addon;
+package kamkeel.npcs.addon;
-import kamkeel.addon.client.DBCClient;
-import kamkeel.addon.client.GeckoAddonClient;
+import kamkeel.npcs.addon.client.DBCClient;
+import kamkeel.npcs.addon.client.GeckoAddonClient;
public class AddonManager {
public static AddonManager Instance;
diff --git a/src/main/java/kamkeel/addon/DBCAddon.java b/src/main/java/kamkeel/npcs/addon/DBCAddon.java
similarity index 96%
rename from src/main/java/kamkeel/addon/DBCAddon.java
rename to src/main/java/kamkeel/npcs/addon/DBCAddon.java
index e8f446143..d109d2393 100644
--- a/src/main/java/kamkeel/addon/DBCAddon.java
+++ b/src/main/java/kamkeel/npcs/addon/DBCAddon.java
@@ -1,6 +1,5 @@
-package kamkeel.addon;
+package kamkeel.npcs.addon;
-import io.netty.buffer.ByteBuf;
import net.minecraft.entity.Entity;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.player.EntityPlayer;
diff --git a/src/main/java/kamkeel/addon/GeckoAddon.java b/src/main/java/kamkeel/npcs/addon/GeckoAddon.java
similarity index 94%
rename from src/main/java/kamkeel/addon/GeckoAddon.java
rename to src/main/java/kamkeel/npcs/addon/GeckoAddon.java
index 97c7a50c2..ee0f72141 100644
--- a/src/main/java/kamkeel/addon/GeckoAddon.java
+++ b/src/main/java/kamkeel/npcs/addon/GeckoAddon.java
@@ -1,4 +1,4 @@
-package kamkeel.addon;
+package kamkeel.npcs.addon;
import net.minecraft.entity.EntityLivingBase;
@@ -17,4 +17,4 @@ public class GeckoAddon {
public void geckoCopyData(EntityLivingBase copied, EntityLivingBase entity){}
-}
\ No newline at end of file
+}
diff --git a/src/main/java/kamkeel/addon/client/DBCClient.java b/src/main/java/kamkeel/npcs/addon/client/DBCClient.java
similarity index 84%
rename from src/main/java/kamkeel/addon/client/DBCClient.java
rename to src/main/java/kamkeel/npcs/addon/client/DBCClient.java
index f148439d6..5fdc75d7e 100644
--- a/src/main/java/kamkeel/addon/client/DBCClient.java
+++ b/src/main/java/kamkeel/npcs/addon/client/DBCClient.java
@@ -1,15 +1,10 @@
-package kamkeel.addon.client;
+package kamkeel.npcs.addon.client;
-import io.netty.buffer.ByteBuf;
-import net.minecraft.client.model.ModelBase;
import net.minecraft.entity.EntityLivingBase;
-import net.minecraft.entity.player.EntityPlayer;
import noppes.npcs.client.gui.mainmenu.GuiNpcStats;
-import noppes.npcs.client.gui.model.GuiCreationScreen;
import noppes.npcs.client.gui.player.inventory.GuiCNPCInventory;
import noppes.npcs.client.gui.util.GuiNPCInterface2;
import noppes.npcs.client.gui.util.GuiNpcButton;
-import noppes.npcs.client.model.ModelMPM;
import noppes.npcs.entity.EntityNPCInterface;
public class DBCClient {
diff --git a/src/main/java/kamkeel/addon/client/GeckoAddonClient.java b/src/main/java/kamkeel/npcs/addon/client/GeckoAddonClient.java
similarity index 97%
rename from src/main/java/kamkeel/addon/client/GeckoAddonClient.java
rename to src/main/java/kamkeel/npcs/addon/client/GeckoAddonClient.java
index 088488314..f014b07ad 100644
--- a/src/main/java/kamkeel/addon/client/GeckoAddonClient.java
+++ b/src/main/java/kamkeel/npcs/addon/client/GeckoAddonClient.java
@@ -1,4 +1,4 @@
-package kamkeel.addon.client;
+package kamkeel.npcs.addon.client;
import net.minecraft.client.model.ModelBase;
import net.minecraft.entity.EntityLivingBase;
diff --git a/src/main/java/kamkeel/command/AnimationCommand.java b/src/main/java/kamkeel/npcs/command/AnimationCommand.java
similarity index 99%
rename from src/main/java/kamkeel/command/AnimationCommand.java
rename to src/main/java/kamkeel/npcs/command/AnimationCommand.java
index 8a6beec18..05e5e517f 100644
--- a/src/main/java/kamkeel/command/AnimationCommand.java
+++ b/src/main/java/kamkeel/npcs/command/AnimationCommand.java
@@ -1,4 +1,4 @@
-package kamkeel.command;
+package kamkeel.npcs.command;
import net.minecraft.command.CommandException;
import net.minecraft.command.ICommandSender;
diff --git a/src/main/java/kamkeel/command/CloneCommand.java b/src/main/java/kamkeel/npcs/command/CloneCommand.java
similarity index 95%
rename from src/main/java/kamkeel/command/CloneCommand.java
rename to src/main/java/kamkeel/npcs/command/CloneCommand.java
index 174d1039a..fc6e26817 100644
--- a/src/main/java/kamkeel/command/CloneCommand.java
+++ b/src/main/java/kamkeel/npcs/command/CloneCommand.java
@@ -1,8 +1,7 @@
-package kamkeel.command;
+package kamkeel.npcs.command;
import foxz.utils.Utils;
import net.minecraft.block.Block;
-import net.minecraft.command.CommandBase;
import net.minecraft.command.CommandException;
import net.minecraft.command.ICommandSender;
import net.minecraft.entity.Entity;
@@ -180,9 +179,9 @@ public class CloneCommand extends CommandKamkeelBase {
return;
}
try{
- posX = CommandBase.func_110666_a(sender, posX, par[0]);
- posY = CommandBase.func_110665_a(sender, posY, par[1].trim(), 0, 0);
- posZ = CommandBase.func_110666_a(sender, posZ, par[2]);
+ posX = func_110666_a(sender, posX, par[0]);
+ posY = func_110665_a(sender, posY, par[1].trim(), 0, 0);
+ posZ = func_110666_a(sender, posZ, par[2]);
} catch(NumberFormatException ex){
sendError(sender, "Location should be in numbers");
return;
@@ -272,9 +271,9 @@ public class CloneCommand extends CommandKamkeelBase {
return;
}
try{
- posX = CommandBase.func_110666_a(sender, posX, par[0]);
- posY = CommandBase.func_110665_a(sender, posY, par[1].trim(), 0, 0);
- posZ = CommandBase.func_110666_a(sender, posZ, par[2]);
+ posX = func_110666_a(sender, posX, par[0]);
+ posY = func_110665_a(sender, posY, par[1].trim(), 0, 0);
+ posZ = func_110666_a(sender, posZ, par[2]);
} catch(NumberFormatException ex){
sendError(sender, "Location should be in numbers");
return;
diff --git a/src/main/java/kamkeel/command/CommandCommand.java b/src/main/java/kamkeel/npcs/command/CommandCommand.java
similarity index 98%
rename from src/main/java/kamkeel/command/CommandCommand.java
rename to src/main/java/kamkeel/npcs/command/CommandCommand.java
index 80a41ec28..facac35f1 100644
--- a/src/main/java/kamkeel/command/CommandCommand.java
+++ b/src/main/java/kamkeel/npcs/command/CommandCommand.java
@@ -1,4 +1,4 @@
-package kamkeel.command;
+package kamkeel.npcs.command;
import net.minecraft.command.CommandException;
import net.minecraft.command.ICommandSender;
diff --git a/src/main/java/kamkeel/command/CommandKamkeel.java b/src/main/java/kamkeel/npcs/command/CommandKamkeel.java
similarity index 98%
rename from src/main/java/kamkeel/command/CommandKamkeel.java
rename to src/main/java/kamkeel/npcs/command/CommandKamkeel.java
index 86c192847..6c5bfd28d 100644
--- a/src/main/java/kamkeel/command/CommandKamkeel.java
+++ b/src/main/java/kamkeel/npcs/command/CommandKamkeel.java
@@ -1,4 +1,4 @@
-package kamkeel.command;
+package kamkeel.npcs.command;
import net.minecraft.command.CommandBase;
import net.minecraft.command.CommandException;
@@ -46,7 +46,7 @@ public class CommandKamkeel extends CommandBase{
@Override
public String getCommandName() {
- return "kamkeel";
+ return "kamkeel/npcs";
}
@Override
diff --git a/src/main/java/kamkeel/command/CommandKamkeelBase.java b/src/main/java/kamkeel/npcs/command/CommandKamkeelBase.java
similarity index 99%
rename from src/main/java/kamkeel/command/CommandKamkeelBase.java
rename to src/main/java/kamkeel/npcs/command/CommandKamkeelBase.java
index 9c380f7c2..cf87c5d36 100644
--- a/src/main/java/kamkeel/command/CommandKamkeelBase.java
+++ b/src/main/java/kamkeel/npcs/command/CommandKamkeelBase.java
@@ -1,4 +1,4 @@
-package kamkeel.command;
+package kamkeel.npcs.command;
import net.minecraft.command.CommandBase;
import net.minecraft.command.CommandException;
diff --git a/src/main/java/kamkeel/command/ConfigCommand.java b/src/main/java/kamkeel/npcs/command/ConfigCommand.java
similarity index 99%
rename from src/main/java/kamkeel/command/ConfigCommand.java
rename to src/main/java/kamkeel/npcs/command/ConfigCommand.java
index 4be014417..89d22db44 100644
--- a/src/main/java/kamkeel/command/ConfigCommand.java
+++ b/src/main/java/kamkeel/npcs/command/ConfigCommand.java
@@ -1,4 +1,4 @@
-package kamkeel.command;
+package kamkeel.npcs.command;
import foxz.utils.Market;
import net.minecraft.block.Block;
diff --git a/src/main/java/kamkeel/command/DialogCategoryCommand.java b/src/main/java/kamkeel/npcs/command/DialogCategoryCommand.java
similarity index 99%
rename from src/main/java/kamkeel/command/DialogCategoryCommand.java
rename to src/main/java/kamkeel/npcs/command/DialogCategoryCommand.java
index 648920e06..d149a15b7 100644
--- a/src/main/java/kamkeel/command/DialogCategoryCommand.java
+++ b/src/main/java/kamkeel/npcs/command/DialogCategoryCommand.java
@@ -1,4 +1,4 @@
-package kamkeel.command;
+package kamkeel.npcs.command;
import net.minecraft.command.CommandException;
import net.minecraft.command.ICommandSender;
diff --git a/src/main/java/kamkeel/command/DialogCommand.java b/src/main/java/kamkeel/npcs/command/DialogCommand.java
similarity index 99%
rename from src/main/java/kamkeel/command/DialogCommand.java
rename to src/main/java/kamkeel/npcs/command/DialogCommand.java
index ac9ecd543..4a4e3bc66 100644
--- a/src/main/java/kamkeel/command/DialogCommand.java
+++ b/src/main/java/kamkeel/npcs/command/DialogCommand.java
@@ -1,4 +1,4 @@
-package kamkeel.command;
+package kamkeel.npcs.command;
import net.minecraft.command.CommandBase;
import net.minecraft.command.CommandException;
diff --git a/src/main/java/kamkeel/command/FactionCommand.java b/src/main/java/kamkeel/npcs/command/FactionCommand.java
similarity index 96%
rename from src/main/java/kamkeel/command/FactionCommand.java
rename to src/main/java/kamkeel/npcs/command/FactionCommand.java
index c3874c325..f5de2f3b5 100644
--- a/src/main/java/kamkeel/command/FactionCommand.java
+++ b/src/main/java/kamkeel/npcs/command/FactionCommand.java
@@ -1,6 +1,5 @@
-package kamkeel.command;
+package kamkeel.npcs.command;
-import net.minecraft.command.CommandBase;
import net.minecraft.command.CommandException;
import net.minecraft.command.ICommandSender;
import noppes.npcs.controllers.FactionController;
@@ -153,7 +152,7 @@ public class FactionCommand extends CommandKamkeelBase {
@Override
public List addTabCompletionOptions(ICommandSender par1, String[] args) {
if(args.length == 3){
- return CommandBase.getListOfStringsMatchingLastWord(args, new String[]{"add", "subtract", "set", "reset", "drop", "create"});
+ return getListOfStringsMatchingLastWord(args, new String[]{"add", "subtract", "set", "reset", "drop", "create"});
}
return null;
}
diff --git a/src/main/java/kamkeel/command/HelpCommand.java b/src/main/java/kamkeel/npcs/command/HelpCommand.java
similarity index 98%
rename from src/main/java/kamkeel/command/HelpCommand.java
rename to src/main/java/kamkeel/npcs/command/HelpCommand.java
index 67b7d092a..f5e0828da 100644
--- a/src/main/java/kamkeel/command/HelpCommand.java
+++ b/src/main/java/kamkeel/npcs/command/HelpCommand.java
@@ -1,4 +1,4 @@
-package kamkeel.command;
+package kamkeel.npcs.command;
import net.minecraft.command.CommandException;
import net.minecraft.command.ICommandSender;
diff --git a/src/main/java/kamkeel/command/NpcCommand.java b/src/main/java/kamkeel/npcs/command/NpcCommand.java
similarity index 99%
rename from src/main/java/kamkeel/command/NpcCommand.java
rename to src/main/java/kamkeel/npcs/command/NpcCommand.java
index 0a19dda0d..18d3fb730 100644
--- a/src/main/java/kamkeel/command/NpcCommand.java
+++ b/src/main/java/kamkeel/npcs/command/NpcCommand.java
@@ -1,4 +1,4 @@
-package kamkeel.command;
+package kamkeel.npcs.command;
import net.minecraft.command.CommandBase;
import net.minecraft.command.CommandException;
diff --git a/src/main/java/kamkeel/command/OverlayCommand.java b/src/main/java/kamkeel/npcs/command/OverlayCommand.java
similarity index 99%
rename from src/main/java/kamkeel/command/OverlayCommand.java
rename to src/main/java/kamkeel/npcs/command/OverlayCommand.java
index 68c8f68c2..e740bc5e0 100644
--- a/src/main/java/kamkeel/command/OverlayCommand.java
+++ b/src/main/java/kamkeel/npcs/command/OverlayCommand.java
@@ -1,4 +1,4 @@
-package kamkeel.command;
+package kamkeel.npcs.command;
import net.minecraft.command.CommandException;
import net.minecraft.command.ICommandSender;
diff --git a/src/main/java/kamkeel/command/QuestCategoryCommand.java b/src/main/java/kamkeel/npcs/command/QuestCategoryCommand.java
similarity index 99%
rename from src/main/java/kamkeel/command/QuestCategoryCommand.java
rename to src/main/java/kamkeel/npcs/command/QuestCategoryCommand.java
index 2e9852a31..b3bbaae6f 100644
--- a/src/main/java/kamkeel/command/QuestCategoryCommand.java
+++ b/src/main/java/kamkeel/npcs/command/QuestCategoryCommand.java
@@ -1,4 +1,4 @@
-package kamkeel.command;
+package kamkeel.npcs.command;
import net.minecraft.command.CommandException;
import net.minecraft.command.ICommandSender;
diff --git a/src/main/java/kamkeel/command/QuestCommand.java b/src/main/java/kamkeel/npcs/command/QuestCommand.java
similarity index 98%
rename from src/main/java/kamkeel/command/QuestCommand.java
rename to src/main/java/kamkeel/npcs/command/QuestCommand.java
index 887b5e47b..cd89ab044 100644
--- a/src/main/java/kamkeel/command/QuestCommand.java
+++ b/src/main/java/kamkeel/npcs/command/QuestCommand.java
@@ -1,11 +1,9 @@
-package kamkeel.command;
+package kamkeel.npcs.command;
-import net.minecraft.command.CommandBase;
import net.minecraft.command.CommandException;
import net.minecraft.command.ICommandSender;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.EntityPlayerMP;
-import net.minecraft.server.MinecraftServer;
import noppes.npcs.Server;
import noppes.npcs.api.handler.data.IQuestObjective;
import noppes.npcs.constants.EnumPacketClient;
@@ -192,7 +190,7 @@ public class QuestCommand extends CommandKamkeelBase {
usage = " [objective] [value]"
)
public void objective(ICommandSender sender, String[] args) throws CommandException {
- EntityPlayer player = CommandBase.getPlayer(sender, args[0]);
+ EntityPlayer player = getPlayer(sender, args[0]);
int questid;
try {
questid = Integer.parseInt(args[1]);
diff --git a/src/main/java/kamkeel/command/ScriptCommand.java b/src/main/java/kamkeel/npcs/command/ScriptCommand.java
similarity index 97%
rename from src/main/java/kamkeel/command/ScriptCommand.java
rename to src/main/java/kamkeel/npcs/command/ScriptCommand.java
index 5edbfb904..bf62cc3fb 100644
--- a/src/main/java/kamkeel/command/ScriptCommand.java
+++ b/src/main/java/kamkeel/npcs/command/ScriptCommand.java
@@ -1,4 +1,4 @@
-package kamkeel.command;
+package kamkeel.npcs.command;
import net.minecraft.command.ICommandSender;
import noppes.npcs.controllers.ScriptController;
diff --git a/src/main/java/kamkeel/command/SlayCommand.java b/src/main/java/kamkeel/npcs/command/SlayCommand.java
similarity index 95%
rename from src/main/java/kamkeel/command/SlayCommand.java
rename to src/main/java/kamkeel/npcs/command/SlayCommand.java
index c4ebed36f..60af6d6cf 100644
--- a/src/main/java/kamkeel/command/SlayCommand.java
+++ b/src/main/java/kamkeel/npcs/command/SlayCommand.java
@@ -1,6 +1,5 @@
-package kamkeel.command;
+package kamkeel.npcs.command;
-import net.minecraft.command.CommandBase;
import net.minecraft.command.CommandException;
import net.minecraft.command.ICommandSender;
import net.minecraft.entity.Entity;
@@ -134,6 +133,6 @@ public class SlayCommand extends CommandKamkeelBase {
@Override
public List addTabCompletionOptions(ICommandSender sender, String[] args){
- return CommandBase.getListOfStringsMatchingLastWord(args, SlayMap.keySet().toArray(new String[SlayMap.size()]));
+ return getListOfStringsMatchingLastWord(args, SlayMap.keySet().toArray(new String[SlayMap.size()]));
}
}
diff --git a/src/main/java/kamkeel/command/profile/CommandHelpProfile.java b/src/main/java/kamkeel/npcs/command/profile/CommandHelpProfile.java
similarity index 98%
rename from src/main/java/kamkeel/command/profile/CommandHelpProfile.java
rename to src/main/java/kamkeel/npcs/command/profile/CommandHelpProfile.java
index fe228dfa1..672e7886c 100644
--- a/src/main/java/kamkeel/command/profile/CommandHelpProfile.java
+++ b/src/main/java/kamkeel/npcs/command/profile/CommandHelpProfile.java
@@ -1,4 +1,4 @@
-package kamkeel.command.profile;
+package kamkeel.npcs.command.profile;
import net.minecraft.command.CommandException;
import net.minecraft.command.ICommandSender;
diff --git a/src/main/java/kamkeel/command/profile/CommandProfile.java b/src/main/java/kamkeel/npcs/command/profile/CommandProfile.java
similarity index 95%
rename from src/main/java/kamkeel/command/profile/CommandProfile.java
rename to src/main/java/kamkeel/npcs/command/profile/CommandProfile.java
index a8a19de4b..33d853d91 100644
--- a/src/main/java/kamkeel/command/profile/CommandProfile.java
+++ b/src/main/java/kamkeel/npcs/command/profile/CommandProfile.java
@@ -1,4 +1,4 @@
-package kamkeel.command.profile;
+package kamkeel.npcs.command.profile;
import net.minecraft.command.CommandBase;
import net.minecraft.command.CommandException;
@@ -84,7 +84,7 @@ public class CommandProfile extends CommandBase {
if(command == null)
return null;
if(args.length == 2 && command.runSubCommands())
- return CommandBase.getListOfStringsMatchingLastWord(args, command.subcommands.keySet().toArray(new String[command.subcommands.keySet().size()]));
+ return getListOfStringsMatchingLastWord(args, command.subcommands.keySet().toArray(new String[command.subcommands.keySet().size()]));
String[] useArgs = command.getUsage().split(" ");
if(command.runSubCommands()) {
Method m = command.subcommands.get(args[1].toLowerCase());
diff --git a/src/main/java/kamkeel/command/profile/CommandProfileBase.java b/src/main/java/kamkeel/npcs/command/profile/CommandProfileBase.java
similarity index 99%
rename from src/main/java/kamkeel/command/profile/CommandProfileBase.java
rename to src/main/java/kamkeel/npcs/command/profile/CommandProfileBase.java
index 24487dba2..18c06ad4f 100644
--- a/src/main/java/kamkeel/command/profile/CommandProfileBase.java
+++ b/src/main/java/kamkeel/npcs/command/profile/CommandProfileBase.java
@@ -1,4 +1,4 @@
-package kamkeel.command.profile;
+package kamkeel.npcs.command.profile;
import net.minecraft.command.CommandBase;
import net.minecraft.command.CommandException;
diff --git a/src/main/java/kamkeel/command/profile/CommandProfileChange.java b/src/main/java/kamkeel/npcs/command/profile/CommandProfileChange.java
similarity index 92%
rename from src/main/java/kamkeel/command/profile/CommandProfileChange.java
rename to src/main/java/kamkeel/npcs/command/profile/CommandProfileChange.java
index 8cda00afc..1e38da197 100644
--- a/src/main/java/kamkeel/command/profile/CommandProfileChange.java
+++ b/src/main/java/kamkeel/npcs/command/profile/CommandProfileChange.java
@@ -1,7 +1,7 @@
-package kamkeel.command.profile;
+package kamkeel.npcs.command.profile;
-import kamkeel.controllers.ProfileController;
-import kamkeel.controllers.data.Profile;
+import kamkeel.npcs.controllers.ProfileController;
+import kamkeel.npcs.controllers.data.Profile;
import net.minecraft.command.CommandException;
import net.minecraft.command.ICommandSender;
import net.minecraft.entity.player.EntityPlayer;
diff --git a/src/main/java/kamkeel/controllers/ProfileController.java b/src/main/java/kamkeel/npcs/controllers/ProfileController.java
similarity index 97%
rename from src/main/java/kamkeel/controllers/ProfileController.java
rename to src/main/java/kamkeel/npcs/controllers/ProfileController.java
index a5f9a86da..6cde49199 100644
--- a/src/main/java/kamkeel/controllers/ProfileController.java
+++ b/src/main/java/kamkeel/npcs/controllers/ProfileController.java
@@ -1,8 +1,8 @@
-package kamkeel.controllers;
+package kamkeel.npcs.controllers;
-import kamkeel.controllers.data.IProfileData;
-import kamkeel.controllers.data.Profile;
-import kamkeel.controllers.data.Slot;
+import kamkeel.npcs.controllers.data.IProfileData;
+import kamkeel.npcs.controllers.data.Profile;
+import kamkeel.npcs.controllers.data.Slot;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.nbt.CompressedStreamTools;
import net.minecraft.nbt.NBTTagCompound;
diff --git a/src/main/java/kamkeel/controllers/data/CNPCData.java b/src/main/java/kamkeel/npcs/controllers/data/CNPCData.java
similarity index 96%
rename from src/main/java/kamkeel/controllers/data/CNPCData.java
rename to src/main/java/kamkeel/npcs/controllers/data/CNPCData.java
index fc1ae9d72..9b0b0dece 100644
--- a/src/main/java/kamkeel/controllers/data/CNPCData.java
+++ b/src/main/java/kamkeel/npcs/controllers/data/CNPCData.java
@@ -1,4 +1,4 @@
-package kamkeel.controllers.data;
+package kamkeel.npcs.controllers.data;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.nbt.NBTTagCompound;
diff --git a/src/main/java/kamkeel/controllers/data/IProfileData.java b/src/main/java/kamkeel/npcs/controllers/data/IProfileData.java
similarity index 94%
rename from src/main/java/kamkeel/controllers/data/IProfileData.java
rename to src/main/java/kamkeel/npcs/controllers/data/IProfileData.java
index 52653dc53..a68abc597 100644
--- a/src/main/java/kamkeel/controllers/data/IProfileData.java
+++ b/src/main/java/kamkeel/npcs/controllers/data/IProfileData.java
@@ -1,4 +1,4 @@
-package kamkeel.controllers.data;
+package kamkeel.npcs.controllers.data;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.nbt.NBTTagCompound;
diff --git a/src/main/java/kamkeel/controllers/data/Profile.java b/src/main/java/kamkeel/npcs/controllers/data/Profile.java
similarity index 97%
rename from src/main/java/kamkeel/controllers/data/Profile.java
rename to src/main/java/kamkeel/npcs/controllers/data/Profile.java
index 94726b5b9..01002a470 100644
--- a/src/main/java/kamkeel/controllers/data/Profile.java
+++ b/src/main/java/kamkeel/npcs/controllers/data/Profile.java
@@ -1,4 +1,4 @@
-package kamkeel.controllers.data;
+package kamkeel.npcs.controllers.data;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.nbt.NBTTagCompound;
diff --git a/src/main/java/kamkeel/controllers/data/Slot.java b/src/main/java/kamkeel/npcs/controllers/data/Slot.java
similarity index 92%
rename from src/main/java/kamkeel/controllers/data/Slot.java
rename to src/main/java/kamkeel/npcs/controllers/data/Slot.java
index 592497f54..5e6f86869 100644
--- a/src/main/java/kamkeel/controllers/data/Slot.java
+++ b/src/main/java/kamkeel/npcs/controllers/data/Slot.java
@@ -1,7 +1,5 @@
-package kamkeel.controllers.data;
+package kamkeel.npcs.controllers.data;
-import kamkeel.controllers.ProfileController;
-import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.nbt.NBTTagCompound;
public class Slot {
diff --git a/src/main/java/kamkeel/developer/Developer.java b/src/main/java/kamkeel/npcs/developer/Developer.java
similarity index 97%
rename from src/main/java/kamkeel/developer/Developer.java
rename to src/main/java/kamkeel/npcs/developer/Developer.java
index fc321b9cc..2c89cfc50 100644
--- a/src/main/java/kamkeel/developer/Developer.java
+++ b/src/main/java/kamkeel/npcs/developer/Developer.java
@@ -1,4 +1,4 @@
-package kamkeel.developer;
+package kamkeel.npcs.developer;
import java.util.HashSet;
import java.util.UUID;
diff --git a/src/main/java/kamkeel/network/AbstractPacket.java b/src/main/java/kamkeel/npcs/network/AbstractPacket.java
similarity index 88%
rename from src/main/java/kamkeel/network/AbstractPacket.java
rename to src/main/java/kamkeel/npcs/network/AbstractPacket.java
index 7d8fa4d77..7d373581d 100644
--- a/src/main/java/kamkeel/network/AbstractPacket.java
+++ b/src/main/java/kamkeel/npcs/network/AbstractPacket.java
@@ -1,12 +1,9 @@
-package kamkeel.network;
+package kamkeel.npcs.network;
-import cpw.mods.fml.common.network.NetworkRegistry;
import cpw.mods.fml.common.network.internal.FMLProxyPacket;
import io.netty.buffer.ByteBuf;
import io.netty.buffer.Unpooled;
import net.minecraft.entity.player.EntityPlayer;
-import noppes.npcs.CustomNpcs;
-import noppes.npcs.LogWriter;
import java.io.IOException;
diff --git a/src/main/java/kamkeel/network/KamUtilServer.java b/src/main/java/kamkeel/npcs/network/KamUtilServer.java
similarity index 77%
rename from src/main/java/kamkeel/network/KamUtilServer.java
rename to src/main/java/kamkeel/npcs/network/KamUtilServer.java
index 14710ac7c..4ffb3b7f0 100644
--- a/src/main/java/kamkeel/network/KamUtilServer.java
+++ b/src/main/java/kamkeel/npcs/network/KamUtilServer.java
@@ -1,7 +1,7 @@
-package kamkeel.network;
+package kamkeel.npcs.network;
-import kamkeel.network.packets.large.LargeScrollGroupPacket;
-import kamkeel.network.packets.large.LargeScrollDataPacket;
+import kamkeel.npcs.network.packets.large.LargeScrollGroupPacket;
+import kamkeel.npcs.network.packets.large.LargeScrollDataPacket;
import net.minecraft.entity.player.EntityPlayerMP;
import java.util.Map;
diff --git a/src/main/java/kamkeel/network/LargeAbstractPacket.java b/src/main/java/kamkeel/npcs/network/LargeAbstractPacket.java
similarity index 95%
rename from src/main/java/kamkeel/network/LargeAbstractPacket.java
rename to src/main/java/kamkeel/npcs/network/LargeAbstractPacket.java
index bd748225c..7c398dbfb 100644
--- a/src/main/java/kamkeel/network/LargeAbstractPacket.java
+++ b/src/main/java/kamkeel/npcs/network/LargeAbstractPacket.java
@@ -1,9 +1,7 @@
-package kamkeel.network;
+package kamkeel.npcs.network;
import io.netty.buffer.ByteBuf;
import io.netty.buffer.Unpooled;
-import kamkeel.util.ByteBufUtils;
import net.minecraft.entity.player.EntityPlayer;
-import noppes.npcs.client.NoppesUtil;
import java.io.IOException;
import java.util.HashMap;
diff --git a/src/main/java/kamkeel/network/PacketChannel.java b/src/main/java/kamkeel/npcs/network/PacketChannel.java
similarity index 91%
rename from src/main/java/kamkeel/network/PacketChannel.java
rename to src/main/java/kamkeel/npcs/network/PacketChannel.java
index 05f656294..c7109d856 100644
--- a/src/main/java/kamkeel/network/PacketChannel.java
+++ b/src/main/java/kamkeel/npcs/network/PacketChannel.java
@@ -1,6 +1,6 @@
-package kamkeel.network;
+package kamkeel.npcs.network;
-import kamkeel.network.enums.EnumPacketType;
+import kamkeel.npcs.network.enums.EnumPacketType;
import java.util.Hashtable;
import java.util.Map;
diff --git a/src/main/java/kamkeel/network/PacketHandler.java b/src/main/java/kamkeel/npcs/network/PacketHandler.java
similarity index 94%
rename from src/main/java/kamkeel/network/PacketHandler.java
rename to src/main/java/kamkeel/npcs/network/PacketHandler.java
index c4c718e77..8c0d49162 100644
--- a/src/main/java/kamkeel/network/PacketHandler.java
+++ b/src/main/java/kamkeel/npcs/network/PacketHandler.java
@@ -1,4 +1,4 @@
-package kamkeel.network;
+package kamkeel.npcs.network;
import cpw.mods.fml.common.eventhandler.SubscribeEvent;
import cpw.mods.fml.common.network.FMLEventChannel;
@@ -6,12 +6,10 @@ import cpw.mods.fml.common.network.FMLNetworkEvent;
import cpw.mods.fml.common.network.NetworkRegistry;
import cpw.mods.fml.common.network.internal.FMLProxyPacket;
import io.netty.buffer.ByteBuf;
-import kamkeel.network.AbstractPacket;
-import kamkeel.network.PacketChannel;
-import kamkeel.network.enums.EnumPacketType;
-import kamkeel.network.packets.large.LargeScrollDataPacket;
-import kamkeel.network.packets.large.LargeScrollGroupPacket;
-import kamkeel.network.packets.large.LargeScrollListPacket;
+import kamkeel.npcs.network.enums.EnumPacketType;
+import kamkeel.npcs.network.packets.large.LargeScrollDataPacket;
+import kamkeel.npcs.network.packets.large.LargeScrollGroupPacket;
+import kamkeel.npcs.network.packets.large.LargeScrollListPacket;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.network.NetHandlerPlayServer;
diff --git a/src/main/java/kamkeel/network/enums/EnumClientPacket.java b/src/main/java/kamkeel/npcs/network/enums/EnumClientPacket.java
similarity index 96%
rename from src/main/java/kamkeel/network/enums/EnumClientPacket.java
rename to src/main/java/kamkeel/npcs/network/enums/EnumClientPacket.java
index 6ae61ad6e..83b08450d 100644
--- a/src/main/java/kamkeel/network/enums/EnumClientPacket.java
+++ b/src/main/java/kamkeel/npcs/network/enums/EnumClientPacket.java
@@ -1,4 +1,4 @@
-package kamkeel.network.enums;
+package kamkeel.npcs.network.enums;
// Packets to the Client
public enum EnumClientPacket {
diff --git a/src/main/java/kamkeel/npcs/network/enums/EnumDataPacket.java b/src/main/java/kamkeel/npcs/network/enums/EnumDataPacket.java
new file mode 100644
index 000000000..9ca60f8f8
--- /dev/null
+++ b/src/main/java/kamkeel/npcs/network/enums/EnumDataPacket.java
@@ -0,0 +1,4 @@
+package kamkeel.npcs.network.enums;
+
+public enum EnumDataPacket {
+}
diff --git a/src/main/java/kamkeel/network/enums/EnumInfoPacket.java b/src/main/java/kamkeel/npcs/network/enums/EnumInfoPacket.java
similarity index 54%
rename from src/main/java/kamkeel/network/enums/EnumInfoPacket.java
rename to src/main/java/kamkeel/npcs/network/enums/EnumInfoPacket.java
index 06586758d..86cab3ee5 100644
--- a/src/main/java/kamkeel/network/enums/EnumInfoPacket.java
+++ b/src/main/java/kamkeel/npcs/network/enums/EnumInfoPacket.java
@@ -1,4 +1,4 @@
-package kamkeel.network.enums;
+package kamkeel.npcs.network.enums;
public enum EnumInfoPacket {
LOGIN,
diff --git a/src/main/java/kamkeel/network/enums/EnumPacketType.java b/src/main/java/kamkeel/npcs/network/enums/EnumPacketType.java
similarity index 63%
rename from src/main/java/kamkeel/network/enums/EnumPacketType.java
rename to src/main/java/kamkeel/npcs/network/enums/EnumPacketType.java
index e38ad0ac4..c7ccd39cc 100644
--- a/src/main/java/kamkeel/network/enums/EnumPacketType.java
+++ b/src/main/java/kamkeel/npcs/network/enums/EnumPacketType.java
@@ -1,4 +1,4 @@
-package kamkeel.network.enums;
+package kamkeel.npcs.network.enums;
public enum EnumPacketType {
INFO, DATA, CLIENT, LARGE
diff --git a/src/main/java/kamkeel/network/packets/LoginPacket.java b/src/main/java/kamkeel/npcs/network/packets/LoginPacket.java
similarity index 77%
rename from src/main/java/kamkeel/network/packets/LoginPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/LoginPacket.java
index 82d5899d4..c27cbcad4 100644
--- a/src/main/java/kamkeel/network/packets/LoginPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/LoginPacket.java
@@ -1,11 +1,11 @@
-package kamkeel.network.packets;
+package kamkeel.npcs.network.packets;
import io.netty.buffer.ByteBuf;
-import kamkeel.network.AbstractPacket;
-import kamkeel.network.PacketChannel;
-import kamkeel.network.PacketHandler;
-import kamkeel.network.enums.EnumInfoPacket;
-import kamkeel.util.ByteBufUtils;
+import kamkeel.npcs.network.AbstractPacket;
+import kamkeel.npcs.network.PacketChannel;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.enums.EnumInfoPacket;
+import kamkeel.npcs.util.ByteBufUtils;
import net.minecraft.entity.player.EntityPlayer;
import java.io.IOException;
diff --git a/src/main/java/kamkeel/network/packets/client/ChatBubblePacket.java b/src/main/java/kamkeel/npcs/network/packets/client/ChatBubblePacket.java
similarity index 88%
rename from src/main/java/kamkeel/network/packets/client/ChatBubblePacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/ChatBubblePacket.java
index 7a2867e6f..79db88414 100644
--- a/src/main/java/kamkeel/network/packets/client/ChatBubblePacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/ChatBubblePacket.java
@@ -1,11 +1,11 @@
-package kamkeel.network.packets.client;
+package kamkeel.npcs.network.packets.client;
import cpw.mods.fml.relauncher.Side;
import io.netty.buffer.ByteBuf;
-import kamkeel.network.AbstractPacket;
-import kamkeel.network.PacketChannel;
-import kamkeel.network.PacketHandler;
-import kamkeel.network.enums.EnumClientPacket;
+import kamkeel.npcs.network.AbstractPacket;
+import kamkeel.npcs.network.PacketChannel;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.client.Minecraft;
import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer;
diff --git a/src/main/java/kamkeel/network/packets/client/ChatPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/ChatPacket.java
similarity index 83%
rename from src/main/java/kamkeel/network/packets/client/ChatPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/ChatPacket.java
index 5aabefda8..8e9452423 100644
--- a/src/main/java/kamkeel/network/packets/client/ChatPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/ChatPacket.java
@@ -1,11 +1,11 @@
-package kamkeel.network.packets.client;
+package kamkeel.npcs.network.packets.client;
import cpw.mods.fml.relauncher.Side;
import io.netty.buffer.ByteBuf;
-import kamkeel.network.AbstractPacket;
-import kamkeel.network.PacketChannel;
-import kamkeel.network.PacketHandler;
-import kamkeel.network.enums.EnumClientPacket;
+import kamkeel.npcs.network.AbstractPacket;
+import kamkeel.npcs.network.PacketChannel;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.util.ChatComponentTranslation;
import noppes.npcs.CustomNpcs;
diff --git a/src/main/java/kamkeel/network/packets/client/ConfigCommandPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/ConfigCommandPacket.java
similarity index 89%
rename from src/main/java/kamkeel/network/packets/client/ConfigCommandPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/ConfigCommandPacket.java
index 09f1c91dd..2e030eb9e 100644
--- a/src/main/java/kamkeel/network/packets/client/ConfigCommandPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/ConfigCommandPacket.java
@@ -1,10 +1,10 @@
-package kamkeel.network.packets.client;
+package kamkeel.npcs.network.packets.client;
import io.netty.buffer.ByteBuf;
-import kamkeel.network.AbstractPacket;
-import kamkeel.network.PacketChannel;
-import kamkeel.network.PacketHandler;
-import kamkeel.network.enums.EnumClientPacket;
+import kamkeel.npcs.network.AbstractPacket;
+import kamkeel.npcs.network.PacketChannel;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.entity.player.EntityPlayer;
import noppes.npcs.Server;
import noppes.npcs.client.ClientProxy;
diff --git a/src/main/java/kamkeel/network/packets/client/DBCFormPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/DBCFormPacket.java
similarity index 76%
rename from src/main/java/kamkeel/network/packets/client/DBCFormPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/DBCFormPacket.java
index 0a4432f79..2efc85ea0 100644
--- a/src/main/java/kamkeel/network/packets/client/DBCFormPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/DBCFormPacket.java
@@ -1,10 +1,10 @@
-package kamkeel.network.packets.client;
+package kamkeel.npcs.network.packets.client;
import io.netty.buffer.ByteBuf;
-import kamkeel.network.AbstractPacket;
-import kamkeel.network.PacketChannel;
-import kamkeel.network.PacketHandler;
-import kamkeel.network.enums.EnumClientPacket;
+import kamkeel.npcs.network.AbstractPacket;
+import kamkeel.npcs.network.PacketChannel;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.entity.player.EntityPlayer;
import noppes.npcs.client.NoppesUtil;
diff --git a/src/main/java/kamkeel/network/packets/client/DeleteNpcPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/DeleteNpcPacket.java
similarity index 81%
rename from src/main/java/kamkeel/network/packets/client/DeleteNpcPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/DeleteNpcPacket.java
index 98537c751..24b167de8 100644
--- a/src/main/java/kamkeel/network/packets/client/DeleteNpcPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/DeleteNpcPacket.java
@@ -1,10 +1,10 @@
-package kamkeel.network.packets.client;
+package kamkeel.npcs.network.packets.client;
import io.netty.buffer.ByteBuf;
-import kamkeel.network.AbstractPacket;
-import kamkeel.network.PacketChannel;
-import kamkeel.network.PacketHandler;
-import kamkeel.network.enums.EnumClientPacket;
+import kamkeel.npcs.network.AbstractPacket;
+import kamkeel.npcs.network.PacketChannel;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.client.Minecraft;
import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer;
diff --git a/src/main/java/kamkeel/network/packets/client/DialogDummyPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/DialogDummyPacket.java
similarity index 81%
rename from src/main/java/kamkeel/network/packets/client/DialogDummyPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/DialogDummyPacket.java
index 221f66aa8..b9c49d7cc 100644
--- a/src/main/java/kamkeel/network/packets/client/DialogDummyPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/DialogDummyPacket.java
@@ -1,10 +1,10 @@
-package kamkeel.network.packets.client;
+package kamkeel.npcs.network.packets.client;
import io.netty.buffer.ByteBuf;
-import kamkeel.network.AbstractPacket;
-import kamkeel.network.PacketChannel;
-import kamkeel.network.PacketHandler;
-import kamkeel.network.enums.EnumClientPacket;
+import kamkeel.npcs.network.AbstractPacket;
+import kamkeel.npcs.network.PacketChannel;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.entity.player.EntityPlayer;
import noppes.npcs.Server;
import noppes.npcs.client.NoppesUtil;
diff --git a/src/main/java/kamkeel/network/packets/client/DialogPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/DialogPacket.java
similarity index 83%
rename from src/main/java/kamkeel/network/packets/client/DialogPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/DialogPacket.java
index 343b07891..33302ddf3 100644
--- a/src/main/java/kamkeel/network/packets/client/DialogPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/DialogPacket.java
@@ -1,10 +1,10 @@
-package kamkeel.network.packets.client;
+package kamkeel.npcs.network.packets.client;
import io.netty.buffer.ByteBuf;
-import kamkeel.network.AbstractPacket;
-import kamkeel.network.PacketChannel;
-import kamkeel.network.PacketHandler;
-import kamkeel.network.enums.EnumClientPacket;
+import kamkeel.npcs.network.AbstractPacket;
+import kamkeel.npcs.network.PacketChannel;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.client.Minecraft;
import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer;
diff --git a/src/main/java/kamkeel/network/packets/client/DisableMouseInputPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/DisableMouseInputPacket.java
similarity index 84%
rename from src/main/java/kamkeel/network/packets/client/DisableMouseInputPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/DisableMouseInputPacket.java
index 4723b4b3a..e25032599 100644
--- a/src/main/java/kamkeel/network/packets/client/DisableMouseInputPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/DisableMouseInputPacket.java
@@ -1,10 +1,10 @@
-package kamkeel.network.packets.client;
+package kamkeel.npcs.network.packets.client;
import io.netty.buffer.ByteBuf;
-import kamkeel.network.AbstractPacket;
-import kamkeel.network.PacketChannel;
-import kamkeel.network.PacketHandler;
-import kamkeel.network.enums.EnumClientPacket;
+import kamkeel.npcs.network.AbstractPacket;
+import kamkeel.npcs.network.PacketChannel;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.entity.player.EntityPlayer;
import noppes.npcs.client.ClientEventHandler;
diff --git a/src/main/java/kamkeel/network/packets/client/EditNpcPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/EditNpcPacket.java
similarity index 82%
rename from src/main/java/kamkeel/network/packets/client/EditNpcPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/EditNpcPacket.java
index 4fc5accc5..dc9563938 100644
--- a/src/main/java/kamkeel/network/packets/client/EditNpcPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/EditNpcPacket.java
@@ -1,10 +1,10 @@
-package kamkeel.network.packets.client;
+package kamkeel.npcs.network.packets.client;
import io.netty.buffer.ByteBuf;
-import kamkeel.network.AbstractPacket;
-import kamkeel.network.PacketChannel;
-import kamkeel.network.PacketHandler;
-import kamkeel.network.enums.EnumClientPacket;
+import kamkeel.npcs.network.AbstractPacket;
+import kamkeel.npcs.network.PacketChannel;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.client.Minecraft;
import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer;
diff --git a/src/main/java/kamkeel/network/packets/client/LargeNBTEndPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/LargeNBTEndPacket.java
similarity index 78%
rename from src/main/java/kamkeel/network/packets/client/LargeNBTEndPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/LargeNBTEndPacket.java
index 061ccf419..7da3d4bce 100644
--- a/src/main/java/kamkeel/network/packets/client/LargeNBTEndPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/LargeNBTEndPacket.java
@@ -1,10 +1,10 @@
-package kamkeel.network.packets.client;
+package kamkeel.npcs.network.packets.client;
import io.netty.buffer.ByteBuf;
-import kamkeel.network.AbstractPacket;
-import kamkeel.network.PacketChannel;
-import kamkeel.network.PacketHandler;
-import kamkeel.network.enums.EnumClientPacket;
+import kamkeel.npcs.network.AbstractPacket;
+import kamkeel.npcs.network.PacketChannel;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.entity.player.EntityPlayer;
import noppes.npcs.client.NoppesUtil;
diff --git a/src/main/java/kamkeel/network/packets/client/LargeNBTPartPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/LargeNBTPartPacket.java
similarity index 78%
rename from src/main/java/kamkeel/network/packets/client/LargeNBTPartPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/LargeNBTPartPacket.java
index 7eb8e46fe..d87db4a40 100644
--- a/src/main/java/kamkeel/network/packets/client/LargeNBTPartPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/LargeNBTPartPacket.java
@@ -1,10 +1,10 @@
-package kamkeel.network.packets.client;
+package kamkeel.npcs.network.packets.client;
import io.netty.buffer.ByteBuf;
-import kamkeel.network.AbstractPacket;
-import kamkeel.network.PacketChannel;
-import kamkeel.network.PacketHandler;
-import kamkeel.network.enums.EnumClientPacket;
+import kamkeel.npcs.network.AbstractPacket;
+import kamkeel.npcs.network.PacketChannel;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.entity.player.EntityPlayer;
import noppes.npcs.client.NoppesUtil;
diff --git a/src/main/java/kamkeel/network/packets/client/MarkDataPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/MarkDataPacket.java
similarity index 83%
rename from src/main/java/kamkeel/network/packets/client/MarkDataPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/MarkDataPacket.java
index a6412982b..6d053a132 100644
--- a/src/main/java/kamkeel/network/packets/client/MarkDataPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/MarkDataPacket.java
@@ -1,10 +1,10 @@
-package kamkeel.network.packets.client;
+package kamkeel.npcs.network.packets.client;
import io.netty.buffer.ByteBuf;
-import kamkeel.network.AbstractPacket;
-import kamkeel.network.PacketChannel;
-import kamkeel.network.PacketHandler;
-import kamkeel.network.enums.EnumClientPacket;
+import kamkeel.npcs.network.AbstractPacket;
+import kamkeel.npcs.network.PacketChannel;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.nbt.NBTTagCompound;
diff --git a/src/main/java/kamkeel/network/packets/client/MessagePacket.java b/src/main/java/kamkeel/npcs/network/packets/client/MessagePacket.java
similarity index 86%
rename from src/main/java/kamkeel/network/packets/client/MessagePacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/MessagePacket.java
index 97d05da72..59aa475fe 100644
--- a/src/main/java/kamkeel/network/packets/client/MessagePacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/MessagePacket.java
@@ -1,18 +1,17 @@
-package kamkeel.network.packets.client;
+package kamkeel.npcs.network.packets.client;
import cpw.mods.fml.common.ObfuscationReflectionHelper;
import cpw.mods.fml.relauncher.Side;
import io.netty.buffer.ByteBuf;
-import kamkeel.network.AbstractPacket;
-import kamkeel.network.PacketChannel;
-import kamkeel.network.PacketHandler;
-import kamkeel.network.enums.EnumClientPacket;
+import kamkeel.npcs.network.AbstractPacket;
+import kamkeel.npcs.network.PacketChannel;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.achievement.GuiAchievement;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.stats.Achievement;
import net.minecraft.util.StatCollector;
-import noppes.npcs.CustomItems;
import noppes.npcs.CustomNpcs;
import noppes.npcs.Server;
diff --git a/src/main/java/kamkeel/network/packets/client/OpenBookPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/OpenBookPacket.java
similarity index 83%
rename from src/main/java/kamkeel/network/packets/client/OpenBookPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/OpenBookPacket.java
index 3788c9814..1028896bd 100644
--- a/src/main/java/kamkeel/network/packets/client/OpenBookPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/OpenBookPacket.java
@@ -1,10 +1,10 @@
-package kamkeel.network.packets.client;
+package kamkeel.npcs.network.packets.client;
import io.netty.buffer.ByteBuf;
-import kamkeel.network.AbstractPacket;
-import kamkeel.network.PacketChannel;
-import kamkeel.network.PacketHandler;
-import kamkeel.network.enums.EnumClientPacket;
+import kamkeel.npcs.network.AbstractPacket;
+import kamkeel.npcs.network.PacketChannel;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
diff --git a/src/main/java/kamkeel/network/packets/client/OverlayQuestTrackingPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/OverlayQuestTrackingPacket.java
similarity index 84%
rename from src/main/java/kamkeel/network/packets/client/OverlayQuestTrackingPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/OverlayQuestTrackingPacket.java
index 487f163dc..46d4c1a84 100644
--- a/src/main/java/kamkeel/network/packets/client/OverlayQuestTrackingPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/OverlayQuestTrackingPacket.java
@@ -1,10 +1,10 @@
-package kamkeel.network.packets.client;
+package kamkeel.npcs.network.packets.client;
import io.netty.buffer.ByteBuf;
-import kamkeel.network.AbstractPacket;
-import kamkeel.network.PacketChannel;
-import kamkeel.network.PacketHandler;
-import kamkeel.network.enums.EnumClientPacket;
+import kamkeel.npcs.network.AbstractPacket;
+import kamkeel.npcs.network.PacketChannel;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.client.Minecraft;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.nbt.NBTTagCompound;
diff --git a/src/main/java/kamkeel/network/packets/client/ParticlePacket.java b/src/main/java/kamkeel/npcs/network/packets/client/ParticlePacket.java
similarity index 76%
rename from src/main/java/kamkeel/network/packets/client/ParticlePacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/ParticlePacket.java
index ae7230ee4..1e7c4f6a0 100644
--- a/src/main/java/kamkeel/network/packets/client/ParticlePacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/ParticlePacket.java
@@ -1,10 +1,10 @@
-package kamkeel.network.packets.client;
+package kamkeel.npcs.network.packets.client;
import io.netty.buffer.ByteBuf;
-import kamkeel.network.AbstractPacket;
-import kamkeel.network.PacketChannel;
-import kamkeel.network.PacketHandler;
-import kamkeel.network.enums.EnumClientPacket;
+import kamkeel.npcs.network.AbstractPacket;
+import kamkeel.npcs.network.PacketChannel;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.entity.player.EntityPlayer;
import noppes.npcs.client.NoppesUtil;
diff --git a/src/main/java/kamkeel/network/packets/client/PartyDataPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/PartyDataPacket.java
similarity index 87%
rename from src/main/java/kamkeel/network/packets/client/PartyDataPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/PartyDataPacket.java
index 95b2f68eb..4243be0da 100644
--- a/src/main/java/kamkeel/network/packets/client/PartyDataPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/PartyDataPacket.java
@@ -1,10 +1,10 @@
-package kamkeel.network.packets.client;
+package kamkeel.npcs.network.packets.client;
import io.netty.buffer.ByteBuf;
-import kamkeel.network.AbstractPacket;
-import kamkeel.network.PacketChannel;
-import kamkeel.network.PacketHandler;
-import kamkeel.network.enums.EnumClientPacket;
+import kamkeel.npcs.network.AbstractPacket;
+import kamkeel.npcs.network.PacketChannel;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.GuiScreen;
import net.minecraft.entity.player.EntityPlayer;
diff --git a/src/main/java/kamkeel/network/packets/client/PlayerUpdateSkinOverlaysPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/PlayerUpdateSkinOverlaysPacket.java
similarity index 84%
rename from src/main/java/kamkeel/network/packets/client/PlayerUpdateSkinOverlaysPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/PlayerUpdateSkinOverlaysPacket.java
index ee4a9a9c7..a61e06ad5 100644
--- a/src/main/java/kamkeel/network/packets/client/PlayerUpdateSkinOverlaysPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/PlayerUpdateSkinOverlaysPacket.java
@@ -1,10 +1,10 @@
-package kamkeel.network.packets.client;
+package kamkeel.npcs.network.packets.client;
import io.netty.buffer.ByteBuf;
-import kamkeel.network.AbstractPacket;
-import kamkeel.network.PacketChannel;
-import kamkeel.network.PacketHandler;
-import kamkeel.network.enums.EnumClientPacket;
+import kamkeel.npcs.network.AbstractPacket;
+import kamkeel.npcs.network.PacketChannel;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.client.Minecraft;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.nbt.NBTTagCompound;
diff --git a/src/main/java/kamkeel/network/packets/client/QuestCompletionPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/QuestCompletionPacket.java
similarity index 78%
rename from src/main/java/kamkeel/network/packets/client/QuestCompletionPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/QuestCompletionPacket.java
index e395facec..ab1928890 100644
--- a/src/main/java/kamkeel/network/packets/client/QuestCompletionPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/QuestCompletionPacket.java
@@ -1,10 +1,10 @@
-package kamkeel.network.packets.client;
+package kamkeel.npcs.network.packets.client;
import io.netty.buffer.ByteBuf;
-import kamkeel.network.AbstractPacket;
-import kamkeel.network.PacketChannel;
-import kamkeel.network.PacketHandler;
-import kamkeel.network.enums.EnumClientPacket;
+import kamkeel.npcs.network.AbstractPacket;
+import kamkeel.npcs.network.PacketChannel;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.entity.player.EntityPlayer;
import noppes.npcs.Server;
import noppes.npcs.client.NoppesUtil;
diff --git a/src/main/java/kamkeel/network/packets/client/RolePacket.java b/src/main/java/kamkeel/npcs/network/packets/client/RolePacket.java
similarity index 85%
rename from src/main/java/kamkeel/network/packets/client/RolePacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/RolePacket.java
index 41f8ae187..c7b6d5e2a 100644
--- a/src/main/java/kamkeel/network/packets/client/RolePacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/RolePacket.java
@@ -1,10 +1,10 @@
-package kamkeel.network.packets.client;
+package kamkeel.npcs.network.packets.client;
import io.netty.buffer.ByteBuf;
-import kamkeel.network.AbstractPacket;
-import kamkeel.network.PacketChannel;
-import kamkeel.network.PacketHandler;
-import kamkeel.network.enums.EnumClientPacket;
+import kamkeel.npcs.network.AbstractPacket;
+import kamkeel.npcs.network.PacketChannel;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.client.Minecraft;
import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer;
diff --git a/src/main/java/kamkeel/network/packets/client/ScriptOverlayClosePacket.java b/src/main/java/kamkeel/npcs/network/packets/client/ScriptOverlayClosePacket.java
similarity index 79%
rename from src/main/java/kamkeel/network/packets/client/ScriptOverlayClosePacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/ScriptOverlayClosePacket.java
index f40193ceb..3181e3749 100644
--- a/src/main/java/kamkeel/network/packets/client/ScriptOverlayClosePacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/ScriptOverlayClosePacket.java
@@ -1,10 +1,10 @@
-package kamkeel.network.packets.client;
+package kamkeel.npcs.network.packets.client;
import io.netty.buffer.ByteBuf;
-import kamkeel.network.AbstractPacket;
-import kamkeel.network.PacketChannel;
-import kamkeel.network.PacketHandler;
-import kamkeel.network.enums.EnumClientPacket;
+import kamkeel.npcs.network.AbstractPacket;
+import kamkeel.npcs.network.PacketChannel;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.entity.player.EntityPlayer;
import noppes.npcs.client.ClientCacheHandler;
diff --git a/src/main/java/kamkeel/network/packets/client/ScriptOverlayDataPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/ScriptOverlayDataPacket.java
similarity index 83%
rename from src/main/java/kamkeel/network/packets/client/ScriptOverlayDataPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/ScriptOverlayDataPacket.java
index 9952be1f9..a3979c5fb 100644
--- a/src/main/java/kamkeel/network/packets/client/ScriptOverlayDataPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/ScriptOverlayDataPacket.java
@@ -1,10 +1,10 @@
-package kamkeel.network.packets.client;
+package kamkeel.npcs.network.packets.client;
import io.netty.buffer.ByteBuf;
-import kamkeel.network.AbstractPacket;
-import kamkeel.network.PacketChannel;
-import kamkeel.network.PacketHandler;
-import kamkeel.network.enums.EnumClientPacket;
+import kamkeel.npcs.network.AbstractPacket;
+import kamkeel.npcs.network.PacketChannel;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.client.Minecraft;
import net.minecraft.entity.player.EntityPlayer;
import noppes.npcs.Server;
diff --git a/src/main/java/kamkeel/network/packets/client/ScriptedParticlePacket.java b/src/main/java/kamkeel/npcs/network/packets/client/ScriptedParticlePacket.java
similarity index 77%
rename from src/main/java/kamkeel/network/packets/client/ScriptedParticlePacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/ScriptedParticlePacket.java
index ea8150148..c89c4c352 100644
--- a/src/main/java/kamkeel/network/packets/client/ScriptedParticlePacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/ScriptedParticlePacket.java
@@ -1,10 +1,10 @@
-package kamkeel.network.packets.client;
+package kamkeel.npcs.network.packets.client;
import io.netty.buffer.ByteBuf;
-import kamkeel.network.AbstractPacket;
-import kamkeel.network.PacketChannel;
-import kamkeel.network.PacketHandler;
-import kamkeel.network.enums.EnumClientPacket;
+import kamkeel.npcs.network.AbstractPacket;
+import kamkeel.npcs.network.PacketChannel;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.entity.player.EntityPlayer;
import noppes.npcs.client.NoppesUtil;
diff --git a/src/main/java/kamkeel/network/packets/client/ScrollSelectedPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/ScrollSelectedPacket.java
similarity index 82%
rename from src/main/java/kamkeel/network/packets/client/ScrollSelectedPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/ScrollSelectedPacket.java
index 7de8e9fed..381b7107a 100644
--- a/src/main/java/kamkeel/network/packets/client/ScrollSelectedPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/ScrollSelectedPacket.java
@@ -1,10 +1,10 @@
-package kamkeel.network.packets.client;
+package kamkeel.npcs.network.packets.client;
import io.netty.buffer.ByteBuf;
-import kamkeel.network.AbstractPacket;
-import kamkeel.network.PacketChannel;
-import kamkeel.network.PacketHandler;
-import kamkeel.network.enums.EnumClientPacket;
+import kamkeel.npcs.network.AbstractPacket;
+import kamkeel.npcs.network.PacketChannel;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.GuiScreen;
import net.minecraft.entity.player.EntityPlayer;
diff --git a/src/main/java/kamkeel/network/packets/client/StopSoundForPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/StopSoundForPacket.java
similarity index 78%
rename from src/main/java/kamkeel/network/packets/client/StopSoundForPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/StopSoundForPacket.java
index ec066645b..d936f2971 100644
--- a/src/main/java/kamkeel/network/packets/client/StopSoundForPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/StopSoundForPacket.java
@@ -1,10 +1,10 @@
-package kamkeel.network.packets.client;
+package kamkeel.npcs.network.packets.client;
import io.netty.buffer.ByteBuf;
-import kamkeel.network.AbstractPacket;
-import kamkeel.network.PacketChannel;
-import kamkeel.network.PacketHandler;
-import kamkeel.network.enums.EnumClientPacket;
+import kamkeel.npcs.network.AbstractPacket;
+import kamkeel.npcs.network.PacketChannel;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.entity.player.EntityPlayer;
import noppes.npcs.client.controllers.ScriptSoundController;
diff --git a/src/main/java/kamkeel/network/packets/client/StopSoundsPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/StopSoundsPacket.java
similarity index 77%
rename from src/main/java/kamkeel/network/packets/client/StopSoundsPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/StopSoundsPacket.java
index 14db7f7cc..1abedb3be 100644
--- a/src/main/java/kamkeel/network/packets/client/StopSoundsPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/StopSoundsPacket.java
@@ -1,10 +1,10 @@
-package kamkeel.network.packets.client;
+package kamkeel.npcs.network.packets.client;
import io.netty.buffer.ByteBuf;
-import kamkeel.network.AbstractPacket;
-import kamkeel.network.PacketChannel;
-import kamkeel.network.PacketHandler;
-import kamkeel.network.enums.EnumClientPacket;
+import kamkeel.npcs.network.AbstractPacket;
+import kamkeel.npcs.network.PacketChannel;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.entity.player.EntityPlayer;
import noppes.npcs.client.controllers.ScriptSoundController;
diff --git a/src/main/java/kamkeel/network/packets/client/SwingPlayerArmPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/SwingPlayerArmPacket.java
similarity index 77%
rename from src/main/java/kamkeel/network/packets/client/SwingPlayerArmPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/SwingPlayerArmPacket.java
index 6ca1511b4..cdc6eaae8 100644
--- a/src/main/java/kamkeel/network/packets/client/SwingPlayerArmPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/SwingPlayerArmPacket.java
@@ -1,10 +1,10 @@
-package kamkeel.network.packets.client;
+package kamkeel.npcs.network.packets.client;
import io.netty.buffer.ByteBuf;
-import kamkeel.network.AbstractPacket;
-import kamkeel.network.PacketChannel;
-import kamkeel.network.PacketHandler;
-import kamkeel.network.enums.EnumClientPacket;
+import kamkeel.npcs.network.AbstractPacket;
+import kamkeel.npcs.network.PacketChannel;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.client.Minecraft;
import net.minecraft.entity.player.EntityPlayer;
diff --git a/src/main/java/kamkeel/network/packets/client/TeleporterPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/TeleporterPacket.java
similarity index 78%
rename from src/main/java/kamkeel/network/packets/client/TeleporterPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/TeleporterPacket.java
index 2ffd14b3a..f6df09f6b 100644
--- a/src/main/java/kamkeel/network/packets/client/TeleporterPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/TeleporterPacket.java
@@ -1,10 +1,10 @@
-package kamkeel.network.packets.client;
+package kamkeel.npcs.network.packets.client;
import io.netty.buffer.ByteBuf;
-import kamkeel.network.AbstractPacket;
-import kamkeel.network.PacketChannel;
-import kamkeel.network.PacketHandler;
-import kamkeel.network.enums.EnumClientPacket;
+import kamkeel.npcs.network.AbstractPacket;
+import kamkeel.npcs.network.PacketChannel;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.entity.player.EntityPlayer;
import noppes.npcs.CustomNpcs;
import noppes.npcs.constants.EnumGuiType;
diff --git a/src/main/java/kamkeel/network/packets/client/UpdateAnimationsPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/UpdateAnimationsPacket.java
similarity index 92%
rename from src/main/java/kamkeel/network/packets/client/UpdateAnimationsPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/UpdateAnimationsPacket.java
index 99ba8f582..91399cc74 100644
--- a/src/main/java/kamkeel/network/packets/client/UpdateAnimationsPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/UpdateAnimationsPacket.java
@@ -1,10 +1,10 @@
-package kamkeel.network.packets.client;
+package kamkeel.npcs.network.packets.client;
import io.netty.buffer.ByteBuf;
-import kamkeel.network.AbstractPacket;
-import kamkeel.network.PacketChannel;
-import kamkeel.network.PacketHandler;
-import kamkeel.network.enums.EnumClientPacket;
+import kamkeel.npcs.network.AbstractPacket;
+import kamkeel.npcs.network.PacketChannel;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.client.Minecraft;
import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer;
diff --git a/src/main/java/kamkeel/network/packets/client/UpdateNpcPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/UpdateNpcPacket.java
similarity index 83%
rename from src/main/java/kamkeel/network/packets/client/UpdateNpcPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/UpdateNpcPacket.java
index 1243f8c7f..05edb23e0 100644
--- a/src/main/java/kamkeel/network/packets/client/UpdateNpcPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/UpdateNpcPacket.java
@@ -1,10 +1,10 @@
-package kamkeel.network.packets.client;
+package kamkeel.npcs.network.packets.client;
import io.netty.buffer.ByteBuf;
-import kamkeel.network.AbstractPacket;
-import kamkeel.network.PacketChannel;
-import kamkeel.network.PacketHandler;
-import kamkeel.network.enums.EnumClientPacket;
+import kamkeel.npcs.network.AbstractPacket;
+import kamkeel.npcs.network.PacketChannel;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.client.Minecraft;
import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer;
diff --git a/src/main/java/kamkeel/network/packets/client/VillagerListPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/VillagerListPacket.java
similarity index 80%
rename from src/main/java/kamkeel/network/packets/client/VillagerListPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/VillagerListPacket.java
index a763c3fe4..202604664 100644
--- a/src/main/java/kamkeel/network/packets/client/VillagerListPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/VillagerListPacket.java
@@ -1,13 +1,12 @@
-package kamkeel.network.packets.client;
+package kamkeel.npcs.network.packets.client;
import io.netty.buffer.ByteBuf;
-import kamkeel.network.AbstractPacket;
-import kamkeel.network.PacketChannel;
-import kamkeel.network.PacketHandler;
-import kamkeel.network.enums.EnumClientPacket;
+import kamkeel.npcs.network.AbstractPacket;
+import kamkeel.npcs.network.PacketChannel;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.network.PacketBuffer;
-import noppes.npcs.Server;
import noppes.npcs.ServerEventsHandler;
import net.minecraft.village.MerchantRecipeList;
diff --git a/src/main/java/kamkeel/network/packets/client/gui/ClonerGUIPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/gui/ClonerGUIPacket.java
similarity index 79%
rename from src/main/java/kamkeel/network/packets/client/gui/ClonerGUIPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/gui/ClonerGUIPacket.java
index 4d18cc63a..fda00a01b 100644
--- a/src/main/java/kamkeel/network/packets/client/gui/ClonerGUIPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/gui/ClonerGUIPacket.java
@@ -1,10 +1,10 @@
-package kamkeel.network.packets.client.gui;
+package kamkeel.npcs.network.packets.client.gui;
import io.netty.buffer.ByteBuf;
-import kamkeel.network.AbstractPacket;
-import kamkeel.network.PacketChannel;
-import kamkeel.network.PacketHandler;
-import kamkeel.network.enums.EnumClientPacket;
+import kamkeel.npcs.network.AbstractPacket;
+import kamkeel.npcs.network.PacketChannel;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.entity.player.EntityPlayer;
import noppes.npcs.CustomNpcs;
import noppes.npcs.constants.EnumGuiType;
diff --git a/src/main/java/kamkeel/network/packets/client/gui/GUIClonerPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/gui/GUIClonerPacket.java
similarity index 82%
rename from src/main/java/kamkeel/network/packets/client/gui/GUIClonerPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/gui/GUIClonerPacket.java
index e69b15463..e7d26d066 100644
--- a/src/main/java/kamkeel/network/packets/client/gui/GUIClonerPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/gui/GUIClonerPacket.java
@@ -1,11 +1,11 @@
-package kamkeel.network.packets.client.gui;
+package kamkeel.npcs.network.packets.client.gui;
import cpw.mods.fml.relauncher.Side;
import io.netty.buffer.ByteBuf;
-import kamkeel.network.AbstractPacket;
-import kamkeel.network.PacketChannel;
-import kamkeel.network.PacketHandler;
-import kamkeel.network.enums.EnumClientPacket;
+import kamkeel.npcs.network.AbstractPacket;
+import kamkeel.npcs.network.PacketChannel;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.nbt.NBTTagCompound;
import noppes.npcs.CustomNpcs;
diff --git a/src/main/java/kamkeel/network/packets/client/gui/GuiClosePacket.java b/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiClosePacket.java
similarity index 84%
rename from src/main/java/kamkeel/network/packets/client/gui/GuiClosePacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/gui/GuiClosePacket.java
index 883fdd29e..5e3fa37ee 100644
--- a/src/main/java/kamkeel/network/packets/client/gui/GuiClosePacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiClosePacket.java
@@ -1,10 +1,10 @@
-package kamkeel.network.packets.client.gui;
+package kamkeel.npcs.network.packets.client.gui;
import io.netty.buffer.ByteBuf;
-import kamkeel.network.AbstractPacket;
-import kamkeel.network.PacketChannel;
-import kamkeel.network.PacketHandler;
-import kamkeel.network.enums.EnumClientPacket;
+import kamkeel.npcs.network.AbstractPacket;
+import kamkeel.npcs.network.PacketChannel;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.GuiScreen;
import net.minecraft.entity.player.EntityPlayer;
diff --git a/src/main/java/kamkeel/network/packets/client/gui/GuiDataPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiDataPacket.java
similarity index 86%
rename from src/main/java/kamkeel/network/packets/client/gui/GuiDataPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/gui/GuiDataPacket.java
index c41427987..7a12d3b1a 100644
--- a/src/main/java/kamkeel/network/packets/client/gui/GuiDataPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiDataPacket.java
@@ -1,10 +1,10 @@
-package kamkeel.network.packets.client.gui;
+package kamkeel.npcs.network.packets.client.gui;
import io.netty.buffer.ByteBuf;
-import kamkeel.network.AbstractPacket;
-import kamkeel.network.PacketChannel;
-import kamkeel.network.PacketHandler;
-import kamkeel.network.enums.EnumClientPacket;
+import kamkeel.npcs.network.AbstractPacket;
+import kamkeel.npcs.network.PacketChannel;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.GuiScreen;
import net.minecraft.entity.player.EntityPlayer;
diff --git a/src/main/java/kamkeel/network/packets/client/gui/GuiErrorPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiErrorPacket.java
similarity index 83%
rename from src/main/java/kamkeel/network/packets/client/gui/GuiErrorPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/gui/GuiErrorPacket.java
index d653e88f8..e1242dca8 100644
--- a/src/main/java/kamkeel/network/packets/client/gui/GuiErrorPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiErrorPacket.java
@@ -1,10 +1,10 @@
-package kamkeel.network.packets.client.gui;
+package kamkeel.npcs.network.packets.client.gui;
import io.netty.buffer.ByteBuf;
-import kamkeel.network.AbstractPacket;
-import kamkeel.network.PacketChannel;
-import kamkeel.network.PacketHandler;
-import kamkeel.network.enums.EnumClientPacket;
+import kamkeel.npcs.network.AbstractPacket;
+import kamkeel.npcs.network.PacketChannel;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.GuiScreen;
import net.minecraft.entity.player.EntityPlayer;
diff --git a/src/main/java/kamkeel/network/packets/client/gui/GuiPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiPacket.java
similarity index 80%
rename from src/main/java/kamkeel/network/packets/client/gui/GuiPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/gui/GuiPacket.java
index a86c8a8fe..38f880b64 100644
--- a/src/main/java/kamkeel/network/packets/client/gui/GuiPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiPacket.java
@@ -1,10 +1,10 @@
-package kamkeel.network.packets.client.gui;
+package kamkeel.npcs.network.packets.client.gui;
import io.netty.buffer.ByteBuf;
-import kamkeel.network.AbstractPacket;
-import kamkeel.network.PacketChannel;
-import kamkeel.network.PacketHandler;
-import kamkeel.network.enums.EnumClientPacket;
+import kamkeel.npcs.network.AbstractPacket;
+import kamkeel.npcs.network.PacketChannel;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.entity.player.EntityPlayer;
import noppes.npcs.CustomNpcs;
import noppes.npcs.constants.EnumGuiType;
diff --git a/src/main/java/kamkeel/network/packets/client/gui/GuiRedstonePacket.java b/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiRedstonePacket.java
similarity index 79%
rename from src/main/java/kamkeel/network/packets/client/gui/GuiRedstonePacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/gui/GuiRedstonePacket.java
index d12bbfd60..4116e7eed 100644
--- a/src/main/java/kamkeel/network/packets/client/gui/GuiRedstonePacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiRedstonePacket.java
@@ -1,10 +1,10 @@
-package kamkeel.network.packets.client.gui;
+package kamkeel.npcs.network.packets.client.gui;
import io.netty.buffer.ByteBuf;
-import kamkeel.network.AbstractPacket;
-import kamkeel.network.PacketChannel;
-import kamkeel.network.PacketHandler;
-import kamkeel.network.enums.EnumClientPacket;
+import kamkeel.npcs.network.AbstractPacket;
+import kamkeel.npcs.network.PacketChannel;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.nbt.NBTTagCompound;
import noppes.npcs.Server;
diff --git a/src/main/java/kamkeel/network/packets/client/gui/GuiWaypointPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiWaypointPacket.java
similarity index 79%
rename from src/main/java/kamkeel/network/packets/client/gui/GuiWaypointPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/gui/GuiWaypointPacket.java
index 5905b517e..094e9ef90 100644
--- a/src/main/java/kamkeel/network/packets/client/gui/GuiWaypointPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiWaypointPacket.java
@@ -1,10 +1,10 @@
-package kamkeel.network.packets.client.gui;
+package kamkeel.npcs.network.packets.client.gui;
import io.netty.buffer.ByteBuf;
-import kamkeel.network.AbstractPacket;
-import kamkeel.network.PacketChannel;
-import kamkeel.network.PacketHandler;
-import kamkeel.network.enums.EnumClientPacket;
+import kamkeel.npcs.network.AbstractPacket;
+import kamkeel.npcs.network.PacketChannel;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.nbt.NBTTagCompound;
import noppes.npcs.Server;
diff --git a/src/main/java/kamkeel/network/packets/client/gui/IsGuiOpenPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/gui/IsGuiOpenPacket.java
similarity index 79%
rename from src/main/java/kamkeel/network/packets/client/gui/IsGuiOpenPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/gui/IsGuiOpenPacket.java
index 20a04f1ca..041deba86 100644
--- a/src/main/java/kamkeel/network/packets/client/gui/IsGuiOpenPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/gui/IsGuiOpenPacket.java
@@ -1,10 +1,10 @@
-package kamkeel.network.packets.client.gui;
+package kamkeel.npcs.network.packets.client.gui;
import io.netty.buffer.ByteBuf;
-import kamkeel.network.AbstractPacket;
-import kamkeel.network.PacketChannel;
-import kamkeel.network.PacketHandler;
-import kamkeel.network.enums.EnumClientPacket;
+import kamkeel.npcs.network.AbstractPacket;
+import kamkeel.npcs.network.PacketChannel;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.client.Minecraft;
import net.minecraft.entity.player.EntityPlayer;
import noppes.npcs.client.NoppesUtil;
diff --git a/src/main/java/kamkeel/network/packets/client/sound/ContinueSoundsPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/sound/ContinueSoundsPacket.java
similarity index 77%
rename from src/main/java/kamkeel/network/packets/client/sound/ContinueSoundsPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/sound/ContinueSoundsPacket.java
index f6de38442..47b151726 100644
--- a/src/main/java/kamkeel/network/packets/client/sound/ContinueSoundsPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/sound/ContinueSoundsPacket.java
@@ -1,10 +1,10 @@
-package kamkeel.network.packets.client.sound;
+package kamkeel.npcs.network.packets.client.sound;
import io.netty.buffer.ByteBuf;
-import kamkeel.network.AbstractPacket;
-import kamkeel.network.PacketChannel;
-import kamkeel.network.PacketHandler;
-import kamkeel.network.enums.EnumClientPacket;
+import kamkeel.npcs.network.AbstractPacket;
+import kamkeel.npcs.network.PacketChannel;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.entity.player.EntityPlayer;
import noppes.npcs.client.controllers.ScriptSoundController;
diff --git a/src/main/java/kamkeel/network/packets/client/sound/PauseSoundsPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/sound/PauseSoundsPacket.java
similarity index 77%
rename from src/main/java/kamkeel/network/packets/client/sound/PauseSoundsPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/sound/PauseSoundsPacket.java
index 297e9e6b6..add8d770e 100644
--- a/src/main/java/kamkeel/network/packets/client/sound/PauseSoundsPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/sound/PauseSoundsPacket.java
@@ -1,10 +1,10 @@
-package kamkeel.network.packets.client.sound;
+package kamkeel.npcs.network.packets.client.sound;
import io.netty.buffer.ByteBuf;
-import kamkeel.network.AbstractPacket;
-import kamkeel.network.PacketChannel;
-import kamkeel.network.PacketHandler;
-import kamkeel.network.enums.EnumClientPacket;
+import kamkeel.npcs.network.AbstractPacket;
+import kamkeel.npcs.network.PacketChannel;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.entity.player.EntityPlayer;
import noppes.npcs.client.controllers.ScriptSoundController;
diff --git a/src/main/java/kamkeel/network/packets/client/sound/PlayMusicPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/sound/PlayMusicPacket.java
similarity index 79%
rename from src/main/java/kamkeel/network/packets/client/sound/PlayMusicPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/sound/PlayMusicPacket.java
index e0c8fe9b5..b59cfb9e3 100644
--- a/src/main/java/kamkeel/network/packets/client/sound/PlayMusicPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/sound/PlayMusicPacket.java
@@ -1,10 +1,10 @@
-package kamkeel.network.packets.client.sound;
+package kamkeel.npcs.network.packets.client.sound;
import io.netty.buffer.ByteBuf;
-import kamkeel.network.AbstractPacket;
-import kamkeel.network.PacketChannel;
-import kamkeel.network.PacketHandler;
-import kamkeel.network.enums.EnumClientPacket;
+import kamkeel.npcs.network.AbstractPacket;
+import kamkeel.npcs.network.PacketChannel;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.entity.player.EntityPlayer;
import noppes.npcs.Server;
import noppes.npcs.client.controllers.MusicController;
diff --git a/src/main/java/kamkeel/network/packets/client/sound/PlaySoundPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/sound/PlaySoundPacket.java
similarity index 80%
rename from src/main/java/kamkeel/network/packets/client/sound/PlaySoundPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/sound/PlaySoundPacket.java
index f0ed27cdc..a81e3873a 100644
--- a/src/main/java/kamkeel/network/packets/client/sound/PlaySoundPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/sound/PlaySoundPacket.java
@@ -1,10 +1,10 @@
-package kamkeel.network.packets.client.sound;
+package kamkeel.npcs.network.packets.client.sound;
import io.netty.buffer.ByteBuf;
-import kamkeel.network.AbstractPacket;
-import kamkeel.network.PacketChannel;
-import kamkeel.network.PacketHandler;
-import kamkeel.network.enums.EnumClientPacket;
+import kamkeel.npcs.network.AbstractPacket;
+import kamkeel.npcs.network.PacketChannel;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.entity.player.EntityPlayer;
import noppes.npcs.Server;
import noppes.npcs.client.controllers.MusicController;
diff --git a/src/main/java/kamkeel/network/packets/client/sound/PlaySoundToNoIdPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/sound/PlaySoundToNoIdPacket.java
similarity index 82%
rename from src/main/java/kamkeel/network/packets/client/sound/PlaySoundToNoIdPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/sound/PlaySoundToNoIdPacket.java
index a2b53fee6..665a477a0 100644
--- a/src/main/java/kamkeel/network/packets/client/sound/PlaySoundToNoIdPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/sound/PlaySoundToNoIdPacket.java
@@ -1,10 +1,10 @@
-package kamkeel.network.packets.client.sound;
+package kamkeel.npcs.network.packets.client.sound;
import io.netty.buffer.ByteBuf;
-import kamkeel.network.AbstractPacket;
-import kamkeel.network.PacketChannel;
-import kamkeel.network.PacketHandler;
-import kamkeel.network.enums.EnumClientPacket;
+import kamkeel.npcs.network.AbstractPacket;
+import kamkeel.npcs.network.PacketChannel;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.nbt.NBTTagCompound;
import noppes.npcs.Server;
diff --git a/src/main/java/kamkeel/network/packets/client/sound/PlaySoundToPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/sound/PlaySoundToPacket.java
similarity index 82%
rename from src/main/java/kamkeel/network/packets/client/sound/PlaySoundToPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/sound/PlaySoundToPacket.java
index 5c651de5c..d8f4a94f0 100644
--- a/src/main/java/kamkeel/network/packets/client/sound/PlaySoundToPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/sound/PlaySoundToPacket.java
@@ -1,10 +1,10 @@
-package kamkeel.network.packets.client.sound;
+package kamkeel.npcs.network.packets.client.sound;
import io.netty.buffer.ByteBuf;
-import kamkeel.network.AbstractPacket;
-import kamkeel.network.PacketChannel;
-import kamkeel.network.PacketHandler;
-import kamkeel.network.enums.EnumClientPacket;
+import kamkeel.npcs.network.AbstractPacket;
+import kamkeel.npcs.network.PacketChannel;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.nbt.NBTTagCompound;
import noppes.npcs.Server;
diff --git a/src/main/java/kamkeel/network/packets/client/sync/SyncAddPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncAddPacket.java
similarity index 80%
rename from src/main/java/kamkeel/network/packets/client/sync/SyncAddPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/sync/SyncAddPacket.java
index 6224bb102..4318fedd6 100644
--- a/src/main/java/kamkeel/network/packets/client/sync/SyncAddPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncAddPacket.java
@@ -1,10 +1,10 @@
-package kamkeel.network.packets.client.sync;
+package kamkeel.npcs.network.packets.client.sync;
import io.netty.buffer.ByteBuf;
-import kamkeel.network.AbstractPacket;
-import kamkeel.network.PacketChannel;
-import kamkeel.network.PacketHandler;
-import kamkeel.network.enums.EnumClientPacket;
+import kamkeel.npcs.network.AbstractPacket;
+import kamkeel.npcs.network.PacketChannel;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.nbt.NBTTagCompound;
import noppes.npcs.Server;
diff --git a/src/main/java/kamkeel/network/packets/client/sync/SyncConfigPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncConfigPacket.java
similarity index 79%
rename from src/main/java/kamkeel/network/packets/client/sync/SyncConfigPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/sync/SyncConfigPacket.java
index eaf3b419a..5532cd97f 100644
--- a/src/main/java/kamkeel/network/packets/client/sync/SyncConfigPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncConfigPacket.java
@@ -1,10 +1,10 @@
-package kamkeel.network.packets.client.sync;
+package kamkeel.npcs.network.packets.client.sync;
import io.netty.buffer.ByteBuf;
-import kamkeel.network.AbstractPacket;
-import kamkeel.network.PacketChannel;
-import kamkeel.network.PacketHandler;
-import kamkeel.network.enums.EnumClientPacket;
+import kamkeel.npcs.network.AbstractPacket;
+import kamkeel.npcs.network.PacketChannel;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.nbt.NBTTagCompound;
import noppes.npcs.Server;
diff --git a/src/main/java/kamkeel/network/packets/client/sync/SyncEndPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncEndPacket.java
similarity index 80%
rename from src/main/java/kamkeel/network/packets/client/sync/SyncEndPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/sync/SyncEndPacket.java
index bc5a4e26d..b9cbcb7b0 100644
--- a/src/main/java/kamkeel/network/packets/client/sync/SyncEndPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncEndPacket.java
@@ -1,10 +1,10 @@
-package kamkeel.network.packets.client.sync;
+package kamkeel.npcs.network.packets.client.sync;
import io.netty.buffer.ByteBuf;
-import kamkeel.network.AbstractPacket;
-import kamkeel.network.PacketChannel;
-import kamkeel.network.PacketHandler;
-import kamkeel.network.enums.EnumClientPacket;
+import kamkeel.npcs.network.AbstractPacket;
+import kamkeel.npcs.network.PacketChannel;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.nbt.NBTTagCompound;
import noppes.npcs.Server;
diff --git a/src/main/java/kamkeel/network/packets/client/sync/SyncPlayerPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncPlayerPacket.java
similarity index 77%
rename from src/main/java/kamkeel/network/packets/client/sync/SyncPlayerPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/sync/SyncPlayerPacket.java
index 372f26e60..a595e3622 100644
--- a/src/main/java/kamkeel/network/packets/client/sync/SyncPlayerPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncPlayerPacket.java
@@ -1,10 +1,10 @@
-package kamkeel.network.packets.client.sync;
+package kamkeel.npcs.network.packets.client.sync;
import io.netty.buffer.ByteBuf;
-import kamkeel.network.AbstractPacket;
-import kamkeel.network.PacketChannel;
-import kamkeel.network.PacketHandler;
-import kamkeel.network.enums.EnumClientPacket;
+import kamkeel.npcs.network.AbstractPacket;
+import kamkeel.npcs.network.PacketChannel;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.entity.player.EntityPlayer;
import noppes.npcs.client.NoppesUtil;
diff --git a/src/main/java/kamkeel/network/packets/client/sync/SyncRecipesAddPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncRecipesAddPacket.java
similarity index 85%
rename from src/main/java/kamkeel/network/packets/client/sync/SyncRecipesAddPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/sync/SyncRecipesAddPacket.java
index 8460dac7f..cdef473ec 100644
--- a/src/main/java/kamkeel/network/packets/client/sync/SyncRecipesAddPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncRecipesAddPacket.java
@@ -1,11 +1,11 @@
-package kamkeel.network.packets.client.sync;
+package kamkeel.npcs.network.packets.client.sync;
import cpw.mods.fml.relauncher.Side;
import io.netty.buffer.ByteBuf;
-import kamkeel.network.AbstractPacket;
-import kamkeel.network.PacketChannel;
-import kamkeel.network.PacketHandler;
-import kamkeel.network.enums.EnumClientPacket;
+import kamkeel.npcs.network.AbstractPacket;
+import kamkeel.npcs.network.PacketChannel;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.nbt.NBTTagList;
import noppes.npcs.CustomNpcs;
diff --git a/src/main/java/kamkeel/network/packets/client/sync/SyncRecipesCarpentryBenchPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncRecipesCarpentryBenchPacket.java
similarity index 79%
rename from src/main/java/kamkeel/network/packets/client/sync/SyncRecipesCarpentryBenchPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/sync/SyncRecipesCarpentryBenchPacket.java
index c49a37dc0..f78cf1ea1 100644
--- a/src/main/java/kamkeel/network/packets/client/sync/SyncRecipesCarpentryBenchPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncRecipesCarpentryBenchPacket.java
@@ -1,10 +1,10 @@
-package kamkeel.network.packets.client.sync;
+package kamkeel.npcs.network.packets.client.sync;
import io.netty.buffer.ByteBuf;
-import kamkeel.network.AbstractPacket;
-import kamkeel.network.PacketChannel;
-import kamkeel.network.PacketHandler;
-import kamkeel.network.enums.EnumClientPacket;
+import kamkeel.npcs.network.AbstractPacket;
+import kamkeel.npcs.network.PacketChannel;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.entity.player.EntityPlayer;
import noppes.npcs.controllers.RecipeController;
diff --git a/src/main/java/kamkeel/network/packets/client/sync/SyncRecipesWorkbenchPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncRecipesWorkbenchPacket.java
similarity index 79%
rename from src/main/java/kamkeel/network/packets/client/sync/SyncRecipesWorkbenchPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/sync/SyncRecipesWorkbenchPacket.java
index bb3a4ab79..da4608155 100644
--- a/src/main/java/kamkeel/network/packets/client/sync/SyncRecipesWorkbenchPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncRecipesWorkbenchPacket.java
@@ -1,10 +1,10 @@
-package kamkeel.network.packets.client.sync;
+package kamkeel.npcs.network.packets.client.sync;
import io.netty.buffer.ByteBuf;
-import kamkeel.network.AbstractPacket;
-import kamkeel.network.PacketChannel;
-import kamkeel.network.PacketHandler;
-import kamkeel.network.enums.EnumClientPacket;
+import kamkeel.npcs.network.AbstractPacket;
+import kamkeel.npcs.network.PacketChannel;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.entity.player.EntityPlayer;
import noppes.npcs.controllers.RecipeController;
diff --git a/src/main/java/kamkeel/network/packets/client/sync/SyncRemovePacket.java b/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncRemovePacket.java
similarity index 78%
rename from src/main/java/kamkeel/network/packets/client/sync/SyncRemovePacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/sync/SyncRemovePacket.java
index adc7c9ae3..20708ec7b 100644
--- a/src/main/java/kamkeel/network/packets/client/sync/SyncRemovePacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncRemovePacket.java
@@ -1,10 +1,10 @@
-package kamkeel.network.packets.client.sync;
+package kamkeel.npcs.network.packets.client.sync;
import io.netty.buffer.ByteBuf;
-import kamkeel.network.AbstractPacket;
-import kamkeel.network.PacketChannel;
-import kamkeel.network.PacketHandler;
-import kamkeel.network.enums.EnumClientPacket;
+import kamkeel.npcs.network.AbstractPacket;
+import kamkeel.npcs.network.PacketChannel;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.entity.player.EntityPlayer;
import noppes.npcs.controllers.SyncController;
diff --git a/src/main/java/kamkeel/network/packets/client/sync/SyncUpdatePacket.java b/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncUpdatePacket.java
similarity index 80%
rename from src/main/java/kamkeel/network/packets/client/sync/SyncUpdatePacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/sync/SyncUpdatePacket.java
index c95ad6357..69ce07ae5 100644
--- a/src/main/java/kamkeel/network/packets/client/sync/SyncUpdatePacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncUpdatePacket.java
@@ -1,10 +1,10 @@
-package kamkeel.network.packets.client.sync;
+package kamkeel.npcs.network.packets.client.sync;
import io.netty.buffer.ByteBuf;
-import kamkeel.network.AbstractPacket;
-import kamkeel.network.PacketChannel;
-import kamkeel.network.PacketHandler;
-import kamkeel.network.enums.EnumClientPacket;
+import kamkeel.npcs.network.AbstractPacket;
+import kamkeel.npcs.network.PacketChannel;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.nbt.NBTTagCompound;
import noppes.npcs.Server;
diff --git a/src/main/java/kamkeel/network/packets/client/sync/SyncWeaponPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncWeaponPacket.java
similarity index 84%
rename from src/main/java/kamkeel/network/packets/client/sync/SyncWeaponPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/sync/SyncWeaponPacket.java
index 59be33b6e..22d9d9789 100644
--- a/src/main/java/kamkeel/network/packets/client/sync/SyncWeaponPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncWeaponPacket.java
@@ -1,10 +1,10 @@
-package kamkeel.network.packets.client.sync;
+package kamkeel.npcs.network.packets.client.sync;
import io.netty.buffer.ByteBuf;
-import kamkeel.network.AbstractPacket;
-import kamkeel.network.PacketChannel;
-import kamkeel.network.PacketHandler;
-import kamkeel.network.enums.EnumClientPacket;
+import kamkeel.npcs.network.AbstractPacket;
+import kamkeel.npcs.network.PacketChannel;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
diff --git a/src/main/java/kamkeel/network/packets/large/LargeScrollDataPacket.java b/src/main/java/kamkeel/npcs/network/packets/large/LargeScrollDataPacket.java
similarity index 80%
rename from src/main/java/kamkeel/network/packets/large/LargeScrollDataPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/large/LargeScrollDataPacket.java
index acdd6757d..9a31961d6 100644
--- a/src/main/java/kamkeel/network/packets/large/LargeScrollDataPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/large/LargeScrollDataPacket.java
@@ -1,11 +1,11 @@
-package kamkeel.network.packets.large;
+package kamkeel.npcs.network.packets.large;
import io.netty.buffer.ByteBuf;
-import kamkeel.network.LargeAbstractPacket;
-import kamkeel.network.PacketChannel;
-import kamkeel.network.PacketHandler;
-import kamkeel.network.enums.EnumClientPacket;
-import kamkeel.util.ByteBufUtils;
+import kamkeel.npcs.network.LargeAbstractPacket;
+import kamkeel.npcs.network.PacketChannel;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.enums.EnumClientPacket;
+import kamkeel.npcs.util.ByteBufUtils;
import net.minecraft.entity.player.EntityPlayer;
import noppes.npcs.client.NoppesUtil;
diff --git a/src/main/java/kamkeel/network/packets/large/LargeScrollGroupPacket.java b/src/main/java/kamkeel/npcs/network/packets/large/LargeScrollGroupPacket.java
similarity index 80%
rename from src/main/java/kamkeel/network/packets/large/LargeScrollGroupPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/large/LargeScrollGroupPacket.java
index 95384acfb..40a1a2f4f 100644
--- a/src/main/java/kamkeel/network/packets/large/LargeScrollGroupPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/large/LargeScrollGroupPacket.java
@@ -1,11 +1,11 @@
-package kamkeel.network.packets.large;
+package kamkeel.npcs.network.packets.large;
import io.netty.buffer.ByteBuf;
-import kamkeel.network.LargeAbstractPacket;
-import kamkeel.network.PacketChannel;
-import kamkeel.network.PacketHandler;
-import kamkeel.network.enums.EnumClientPacket;
-import kamkeel.util.ByteBufUtils;
+import kamkeel.npcs.network.LargeAbstractPacket;
+import kamkeel.npcs.network.PacketChannel;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.enums.EnumClientPacket;
+import kamkeel.npcs.util.ByteBufUtils;
import net.minecraft.entity.player.EntityPlayer;
import noppes.npcs.client.NoppesUtil;
diff --git a/src/main/java/kamkeel/network/packets/large/LargeScrollListPacket.java b/src/main/java/kamkeel/npcs/network/packets/large/LargeScrollListPacket.java
similarity index 80%
rename from src/main/java/kamkeel/network/packets/large/LargeScrollListPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/large/LargeScrollListPacket.java
index 3fc99cff0..b2e8d5af5 100644
--- a/src/main/java/kamkeel/network/packets/large/LargeScrollListPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/large/LargeScrollListPacket.java
@@ -1,12 +1,12 @@
// src/main/java/kamkeel/network/packets/large/LargeScrollListPacket.java
-package kamkeel.network.packets.large;
+package kamkeel.npcs.network.packets.large;
import io.netty.buffer.ByteBuf;
-import kamkeel.network.LargeAbstractPacket;
-import kamkeel.network.PacketChannel;
-import kamkeel.network.PacketHandler;
-import kamkeel.network.enums.EnumClientPacket;
-import kamkeel.util.ByteBufUtils;
+import kamkeel.npcs.network.LargeAbstractPacket;
+import kamkeel.npcs.network.PacketChannel;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.enums.EnumClientPacket;
+import kamkeel.npcs.util.ByteBufUtils;
import net.minecraft.entity.player.EntityPlayer;
import noppes.npcs.client.NoppesUtil;
diff --git a/src/main/java/kamkeel/util/ByteBufUtils.java b/src/main/java/kamkeel/npcs/util/ByteBufUtils.java
similarity index 99%
rename from src/main/java/kamkeel/util/ByteBufUtils.java
rename to src/main/java/kamkeel/npcs/util/ByteBufUtils.java
index c5e4dee1d..0c7bfa779 100644
--- a/src/main/java/kamkeel/util/ByteBufUtils.java
+++ b/src/main/java/kamkeel/npcs/util/ByteBufUtils.java
@@ -1,4 +1,4 @@
-package kamkeel.util;
+package kamkeel.npcs.util;
import com.google.common.base.Charsets;
import io.netty.buffer.ByteBuf;
diff --git a/src/main/java/kamkeel/util/TextSplitter.java b/src/main/java/kamkeel/npcs/util/TextSplitter.java
similarity index 97%
rename from src/main/java/kamkeel/util/TextSplitter.java
rename to src/main/java/kamkeel/npcs/util/TextSplitter.java
index 30092cf92..d4b887dcf 100644
--- a/src/main/java/kamkeel/util/TextSplitter.java
+++ b/src/main/java/kamkeel/npcs/util/TextSplitter.java
@@ -1,4 +1,4 @@
-package kamkeel.util;
+package kamkeel.npcs.util;
import java.util.ArrayList;
import java.util.List;
@@ -37,4 +37,4 @@ public class TextSplitter {
System.out.println(line);
}
}
-}
\ No newline at end of file
+}
diff --git a/src/main/java/noppes/npcs/CustomNpcs.java b/src/main/java/noppes/npcs/CustomNpcs.java
index 1a8108a2f..4e800cbd7 100644
--- a/src/main/java/noppes/npcs/CustomNpcs.java
+++ b/src/main/java/noppes/npcs/CustomNpcs.java
@@ -10,12 +10,12 @@ import cpw.mods.fml.common.network.NetworkRegistry;
import cpw.mods.fml.common.registry.EntityRegistry;
import cpw.mods.fml.relauncher.Side;
import foxz.command.CommandNoppes;
-import kamkeel.addon.AddonManager;
-import kamkeel.command.CommandKamkeel;
-import kamkeel.command.profile.CommandProfile;
-import kamkeel.controllers.ProfileController;
-import kamkeel.controllers.data.CNPCData;
-import kamkeel.developer.Developer;
+import kamkeel.npcs.addon.AddonManager;
+import kamkeel.npcs.command.CommandKamkeel;
+import kamkeel.npcs.command.profile.CommandProfile;
+import kamkeel.npcs.controllers.ProfileController;
+import kamkeel.npcs.controllers.data.CNPCData;
+import kamkeel.npcs.developer.Developer;
import net.minecraft.block.Block;
import net.minecraft.block.BlockIce;
import net.minecraft.block.BlockLeavesBase;
diff --git a/src/main/java/noppes/npcs/CustomNpcsPermissions.java b/src/main/java/noppes/npcs/CustomNpcsPermissions.java
index ebb749fe5..24898e8a4 100644
--- a/src/main/java/noppes/npcs/CustomNpcsPermissions.java
+++ b/src/main/java/noppes/npcs/CustomNpcsPermissions.java
@@ -2,7 +2,7 @@ package noppes.npcs;
import cpw.mods.fml.common.FMLCommonHandler;
import cpw.mods.fml.relauncher.Side;
-import kamkeel.developer.Developer;
+import kamkeel.npcs.developer.Developer;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.EntityPlayerMP;
import org.apache.logging.log4j.LogManager;
diff --git a/src/main/java/noppes/npcs/PacketHandlerPlayer.java b/src/main/java/noppes/npcs/PacketHandlerPlayer.java
index ec85c256b..7d57b2184 100644
--- a/src/main/java/noppes/npcs/PacketHandlerPlayer.java
+++ b/src/main/java/noppes/npcs/PacketHandlerPlayer.java
@@ -3,7 +3,6 @@ package noppes.npcs;
import cpw.mods.fml.common.eventhandler.SubscribeEvent;
import cpw.mods.fml.common.network.FMLNetworkEvent.ServerCustomPacketEvent;
import io.netty.buffer.ByteBuf;
-import kamkeel.addon.DBCAddon;
import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.init.Items;
diff --git a/src/main/java/noppes/npcs/PacketHandlerServer.java b/src/main/java/noppes/npcs/PacketHandlerServer.java
index 83bf168df..4f5bbb9d6 100644
--- a/src/main/java/noppes/npcs/PacketHandlerServer.java
+++ b/src/main/java/noppes/npcs/PacketHandlerServer.java
@@ -6,7 +6,6 @@ import cpw.mods.fml.common.network.FMLNetworkEvent.ServerCustomPacketEvent;
import cpw.mods.fml.relauncher.Side;
import foxz.utils.Market;
import io.netty.buffer.ByteBuf;
-import kamkeel.addon.DBCAddon;
import net.minecraft.entity.Entity;
import net.minecraft.entity.EntityList;
import net.minecraft.entity.passive.EntityVillager;
diff --git a/src/main/java/noppes/npcs/ScriptPlayerEventHandler.java b/src/main/java/noppes/npcs/ScriptPlayerEventHandler.java
index 8ae6a17ee..211edc791 100644
--- a/src/main/java/noppes/npcs/ScriptPlayerEventHandler.java
+++ b/src/main/java/noppes/npcs/ScriptPlayerEventHandler.java
@@ -5,7 +5,6 @@ import cpw.mods.fml.common.eventhandler.SubscribeEvent;
import cpw.mods.fml.common.gameevent.PlayerEvent;
import cpw.mods.fml.common.gameevent.TickEvent;
import cpw.mods.fml.relauncher.Side;
-import kamkeel.controllers.ProfileController;
import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.EntityPlayerMP;
@@ -22,9 +21,7 @@ import net.minecraftforge.event.entity.living.*;
import net.minecraftforge.event.entity.player.*;
import net.minecraftforge.event.world.BlockEvent;
import noppes.npcs.api.entity.IPlayer;
-import noppes.npcs.constants.EnumPacketClient;
import noppes.npcs.constants.EnumQuestType;
-import noppes.npcs.constants.SyncType;
import noppes.npcs.controllers.PartyController;
import noppes.npcs.controllers.PlayerDataController;
import noppes.npcs.controllers.ScriptController;
diff --git a/src/main/java/noppes/npcs/ServerTickHandler.java b/src/main/java/noppes/npcs/ServerTickHandler.java
index 2b0e79be7..4a7584060 100644
--- a/src/main/java/noppes/npcs/ServerTickHandler.java
+++ b/src/main/java/noppes/npcs/ServerTickHandler.java
@@ -4,7 +4,7 @@ import cpw.mods.fml.common.eventhandler.SubscribeEvent;
import cpw.mods.fml.common.gameevent.PlayerEvent;
import cpw.mods.fml.common.gameevent.TickEvent;
import cpw.mods.fml.common.gameevent.TickEvent.Phase;
-import kamkeel.controllers.ProfileController;
+import kamkeel.npcs.controllers.ProfileController;
import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.server.MinecraftServer;
import net.minecraft.world.WorldServer;
diff --git a/src/main/java/noppes/npcs/ai/CombatHandler.java b/src/main/java/noppes/npcs/ai/CombatHandler.java
index eb980a959..310ec79dd 100644
--- a/src/main/java/noppes/npcs/ai/CombatHandler.java
+++ b/src/main/java/noppes/npcs/ai/CombatHandler.java
@@ -1,6 +1,6 @@
package noppes.npcs.ai;
-import kamkeel.addon.DBCAddon;
+import kamkeel.npcs.addon.DBCAddon;
import net.minecraft.entity.Entity;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.player.EntityPlayer;
diff --git a/src/main/java/noppes/npcs/ai/EntityAIAttackTarget.java b/src/main/java/noppes/npcs/ai/EntityAIAttackTarget.java
index dce5b5638..d9cae376f 100644
--- a/src/main/java/noppes/npcs/ai/EntityAIAttackTarget.java
+++ b/src/main/java/noppes/npcs/ai/EntityAIAttackTarget.java
@@ -1,6 +1,6 @@
package noppes.npcs.ai;
-import kamkeel.addon.DBCAddon;
+import kamkeel.npcs.addon.DBCAddon;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.SharedMonsterAttributes;
import net.minecraft.entity.ai.EntityAIBase;
diff --git a/src/main/java/noppes/npcs/ai/selector/NPCAttackSelector.java b/src/main/java/noppes/npcs/ai/selector/NPCAttackSelector.java
index 90d53919d..fbc215f11 100644
--- a/src/main/java/noppes/npcs/ai/selector/NPCAttackSelector.java
+++ b/src/main/java/noppes/npcs/ai/selector/NPCAttackSelector.java
@@ -1,6 +1,6 @@
package noppes.npcs.ai.selector;
-import kamkeel.addon.DBCAddon;
+import kamkeel.npcs.addon.DBCAddon;
import net.minecraft.command.IEntitySelector;
import net.minecraft.entity.Entity;
import net.minecraft.entity.EntityLivingBase;
diff --git a/src/main/java/noppes/npcs/client/ClientProxy.java b/src/main/java/noppes/npcs/client/ClientProxy.java
index 8b511254e..373d52081 100644
--- a/src/main/java/noppes/npcs/client/ClientProxy.java
+++ b/src/main/java/noppes/npcs/client/ClientProxy.java
@@ -5,8 +5,7 @@ import cpw.mods.fml.client.registry.ClientRegistry;
import cpw.mods.fml.client.registry.RenderingRegistry;
import cpw.mods.fml.common.FMLCommonHandler;
import cpw.mods.fml.common.ObfuscationReflectionHelper;
-import kamkeel.addon.client.DBCClient;
-import net.minecraft.block.Block;
+import kamkeel.npcs.addon.client.DBCClient;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.GuiScreen;
import net.minecraft.client.model.ModelBiped;
diff --git a/src/main/java/noppes/npcs/client/ClientTickHandler.java b/src/main/java/noppes/npcs/client/ClientTickHandler.java
index 6424ea4ad..e1a5a53fc 100644
--- a/src/main/java/noppes/npcs/client/ClientTickHandler.java
+++ b/src/main/java/noppes/npcs/client/ClientTickHandler.java
@@ -5,11 +5,8 @@ import cpw.mods.fml.common.eventhandler.SubscribeEvent;
import cpw.mods.fml.common.gameevent.InputEvent;
import cpw.mods.fml.common.gameevent.TickEvent;
import cpw.mods.fml.common.gameevent.TickEvent.Phase;
-import kamkeel.addon.DBCAddon;
-import kamkeel.addon.client.DBCClient;
+import kamkeel.npcs.addon.client.DBCClient;
import net.minecraft.client.Minecraft;
-import net.minecraft.client.audio.SoundHandler;
-import net.minecraft.client.audio.SoundManager;
import net.minecraft.entity.Entity;
import net.minecraft.inventory.ContainerPlayer;
import net.minecraft.world.World;
diff --git a/src/main/java/noppes/npcs/client/EntityUtil.java b/src/main/java/noppes/npcs/client/EntityUtil.java
index 824bb7dc2..2aadea2a4 100644
--- a/src/main/java/noppes/npcs/client/EntityUtil.java
+++ b/src/main/java/noppes/npcs/client/EntityUtil.java
@@ -1,7 +1,7 @@
package noppes.npcs.client;
-import kamkeel.addon.DBCAddon;
-import kamkeel.addon.GeckoAddon;
+import kamkeel.npcs.addon.DBCAddon;
+import kamkeel.npcs.addon.GeckoAddon;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.boss.EntityDragon;
import net.minecraft.entity.passive.EntityChicken;
diff --git a/src/main/java/noppes/npcs/client/gui/mainmenu/GuiNpcDisplay.java b/src/main/java/noppes/npcs/client/gui/mainmenu/GuiNpcDisplay.java
index 94c816936..eff43fae5 100644
--- a/src/main/java/noppes/npcs/client/gui/mainmenu/GuiNpcDisplay.java
+++ b/src/main/java/noppes/npcs/client/gui/mainmenu/GuiNpcDisplay.java
@@ -1,7 +1,7 @@
package noppes.npcs.client.gui.mainmenu;
import com.mojang.authlib.GameProfile;
-import kamkeel.addon.client.GeckoAddonClient;
+import kamkeel.npcs.addon.client.GeckoAddonClient;
import net.minecraft.client.gui.GuiButton;
import net.minecraft.nbt.NBTTagCompound;
import noppes.npcs.DataDisplay;
diff --git a/src/main/java/noppes/npcs/client/gui/mainmenu/GuiNpcStats.java b/src/main/java/noppes/npcs/client/gui/mainmenu/GuiNpcStats.java
index 192b405e3..7ea0de8f8 100644
--- a/src/main/java/noppes/npcs/client/gui/mainmenu/GuiNpcStats.java
+++ b/src/main/java/noppes/npcs/client/gui/mainmenu/GuiNpcStats.java
@@ -1,7 +1,6 @@
package noppes.npcs.client.gui.mainmenu;
-import kamkeel.addon.DBCAddon;
-import kamkeel.addon.client.DBCClient;
+import kamkeel.npcs.addon.client.DBCClient;
import net.minecraft.client.gui.GuiButton;
import net.minecraft.entity.EnumCreatureAttribute;
import net.minecraft.nbt.NBTTagCompound;
diff --git a/src/main/java/noppes/npcs/client/gui/model/GuiCreationScreen.java b/src/main/java/noppes/npcs/client/gui/model/GuiCreationScreen.java
index 1aec9f0b4..a6d6c2c54 100644
--- a/src/main/java/noppes/npcs/client/gui/model/GuiCreationScreen.java
+++ b/src/main/java/noppes/npcs/client/gui/model/GuiCreationScreen.java
@@ -1,6 +1,6 @@
package noppes.npcs.client.gui.model;
-import kamkeel.addon.client.GeckoAddonClient;
+import kamkeel.npcs.addon.client.GeckoAddonClient;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.GuiButton;
import net.minecraft.client.gui.GuiScreen;
diff --git a/src/main/java/noppes/npcs/client/gui/player/inventory/GuiCNPCInventory.java b/src/main/java/noppes/npcs/client/gui/player/inventory/GuiCNPCInventory.java
index 53e0d7ae6..3ab43c14e 100644
--- a/src/main/java/noppes/npcs/client/gui/player/inventory/GuiCNPCInventory.java
+++ b/src/main/java/noppes/npcs/client/gui/player/inventory/GuiCNPCInventory.java
@@ -1,7 +1,7 @@
package noppes.npcs.client.gui.player.inventory;
import cpw.mods.fml.common.Loader;
-import kamkeel.addon.client.DBCClient;
+import kamkeel.npcs.addon.client.DBCClient;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.GuiButton;
import net.minecraft.util.ResourceLocation;
diff --git a/src/main/java/noppes/npcs/client/gui/util/GuiCustomScroll.java b/src/main/java/noppes/npcs/client/gui/util/GuiCustomScroll.java
index 7ee107877..ea9a1c700 100644
--- a/src/main/java/noppes/npcs/client/gui/util/GuiCustomScroll.java
+++ b/src/main/java/noppes/npcs/client/gui/util/GuiCustomScroll.java
@@ -1,6 +1,6 @@
package noppes.npcs.client.gui.util;
-import kamkeel.util.TextSplitter;
+import kamkeel.npcs.util.TextSplitter;
import net.minecraft.client.gui.GuiScreen;
import net.minecraft.util.ResourceLocation;
import net.minecraft.util.StatCollector;
diff --git a/src/main/java/noppes/npcs/client/gui/util/GuiNpcButton.java b/src/main/java/noppes/npcs/client/gui/util/GuiNpcButton.java
index 836c25ab1..bd3e3b8f0 100644
--- a/src/main/java/noppes/npcs/client/gui/util/GuiNpcButton.java
+++ b/src/main/java/noppes/npcs/client/gui/util/GuiNpcButton.java
@@ -1,6 +1,6 @@
package noppes.npcs.client.gui.util;
-import kamkeel.util.TextSplitter;
+import kamkeel.npcs.util.TextSplitter;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.GuiButton;
import net.minecraft.client.renderer.RenderHelper;
diff --git a/src/main/java/noppes/npcs/client/renderer/RenderNPCInterface.java b/src/main/java/noppes/npcs/client/renderer/RenderNPCInterface.java
index 1fb76656e..baa3d1720 100644
--- a/src/main/java/noppes/npcs/client/renderer/RenderNPCInterface.java
+++ b/src/main/java/noppes/npcs/client/renderer/RenderNPCInterface.java
@@ -2,7 +2,7 @@ package noppes.npcs.client.renderer;
import com.mojang.authlib.minecraft.MinecraftProfileTexture;
import com.mojang.authlib.minecraft.MinecraftProfileTexture.Type;
-import kamkeel.addon.client.GeckoAddonClient;
+import kamkeel.npcs.addon.client.GeckoAddonClient;
import net.minecraft.client.Minecraft;
import net.minecraft.client.entity.AbstractClientPlayer;
import net.minecraft.client.gui.FontRenderer;
diff --git a/src/main/java/noppes/npcs/config/ConfigScript.java b/src/main/java/noppes/npcs/config/ConfigScript.java
index 6e4c3dd72..57c6d434c 100644
--- a/src/main/java/noppes/npcs/config/ConfigScript.java
+++ b/src/main/java/noppes/npcs/config/ConfigScript.java
@@ -1,7 +1,7 @@
package noppes.npcs.config;
import cpw.mods.fml.common.FMLLog;
-import kamkeel.developer.Developer;
+import kamkeel.npcs.developer.Developer;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.server.MinecraftServer;
import net.minecraftforge.common.config.Configuration;
@@ -178,7 +178,7 @@ public class ConfigScript
if(ScriptOpsOnly){
return isOp || scriptDev;
}
-
+
return scriptDev || CustomNpcsPermissions.hasPermission(player, perm);
}
}
diff --git a/src/main/java/noppes/npcs/controllers/SyncController.java b/src/main/java/noppes/npcs/controllers/SyncController.java
index 8ebf881e5..48c0891b5 100644
--- a/src/main/java/noppes/npcs/controllers/SyncController.java
+++ b/src/main/java/noppes/npcs/controllers/SyncController.java
@@ -1,7 +1,7 @@
package noppes.npcs.controllers;
import io.netty.buffer.ByteBuf;
-import kamkeel.addon.DBCAddon;
+import kamkeel.npcs.addon.DBCAddon;
import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.nbt.NBTTagList;
diff --git a/src/main/java/noppes/npcs/controllers/data/PlayerData.java b/src/main/java/noppes/npcs/controllers/data/PlayerData.java
index 86dfa91dd..b4d65091a 100644
--- a/src/main/java/noppes/npcs/controllers/data/PlayerData.java
+++ b/src/main/java/noppes/npcs/controllers/data/PlayerData.java
@@ -1,6 +1,6 @@
package noppes.npcs.controllers.data;
-import kamkeel.addon.DBCAddon;
+import kamkeel.npcs.addon.DBCAddon;
import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.EntityPlayerMP;
diff --git a/src/main/java/noppes/npcs/entity/EntityNPCInterface.java b/src/main/java/noppes/npcs/entity/EntityNPCInterface.java
index 4353d3395..c9df8b905 100644
--- a/src/main/java/noppes/npcs/entity/EntityNPCInterface.java
+++ b/src/main/java/noppes/npcs/entity/EntityNPCInterface.java
@@ -5,8 +5,8 @@ import cpw.mods.fml.common.registry.IEntityAdditionalSpawnData;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import io.netty.buffer.ByteBuf;
-import kamkeel.addon.DBCAddon;
-import kamkeel.addon.client.DBCClient;
+import kamkeel.npcs.addon.DBCAddon;
+import kamkeel.npcs.addon.client.DBCClient;
import net.minecraft.block.Block;
import net.minecraft.block.material.Material;
import net.minecraft.client.Minecraft;
diff --git a/src/main/java/noppes/npcs/entity/EntityProjectile.java b/src/main/java/noppes/npcs/entity/EntityProjectile.java
index 5e08eb3ae..e3e581df2 100644
--- a/src/main/java/noppes/npcs/entity/EntityProjectile.java
+++ b/src/main/java/noppes/npcs/entity/EntityProjectile.java
@@ -2,7 +2,7 @@ package noppes.npcs.entity;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
-import kamkeel.addon.DBCAddon;
+import kamkeel.npcs.addon.DBCAddon;
import net.minecraft.block.Block;
import net.minecraft.entity.Entity;
import net.minecraft.entity.EntityLivingBase;
@@ -27,7 +27,6 @@ import net.minecraft.world.Explosion;
import net.minecraft.world.World;
import noppes.npcs.DataStats;
import noppes.npcs.EventHooks;
-import noppes.npcs.NpcDamageSource;
import noppes.npcs.api.IPos;
import noppes.npcs.api.IWorld;
import noppes.npcs.api.entity.IEntity;
diff --git a/src/main/java/tconstruct/client/tabs/InventoryTabCustomNpc.java b/src/main/java/tconstruct/client/tabs/InventoryTabCustomNpc.java
index bba7409fd..888bc77f1 100644
--- a/src/main/java/tconstruct/client/tabs/InventoryTabCustomNpc.java
+++ b/src/main/java/tconstruct/client/tabs/InventoryTabCustomNpc.java
@@ -1,7 +1,6 @@
package tconstruct.client.tabs;
-import kamkeel.addon.DBCAddon;
-import kamkeel.addon.client.DBCClient;
+import kamkeel.npcs.addon.client.DBCClient;
import net.minecraft.client.Minecraft;
import net.minecraft.init.Items;
import net.minecraft.item.ItemStack;
From 36c8b70eb4dc0275ff520517956a52a8ca861e99 Mon Sep 17 00:00:00 2001
From: Kam
Date: Wed, 29 Jan 2025 13:28:14 -0500
Subject: [PATCH 013/357] Generate Packet Chunks for Large Packets
---
.../npcs/network/LargeAbstractPacket.java | 30 ++++++++++++
.../kamkeel/npcs/network/PacketHandler.java | 46 ++++++++-----------
2 files changed, 49 insertions(+), 27 deletions(-)
diff --git a/src/main/java/kamkeel/npcs/network/LargeAbstractPacket.java b/src/main/java/kamkeel/npcs/network/LargeAbstractPacket.java
index 7c398dbfb..2ad5a526a 100644
--- a/src/main/java/kamkeel/npcs/network/LargeAbstractPacket.java
+++ b/src/main/java/kamkeel/npcs/network/LargeAbstractPacket.java
@@ -1,12 +1,15 @@
package kamkeel.npcs.network;
+import cpw.mods.fml.common.network.internal.FMLProxyPacket;
import io.netty.buffer.ByteBuf;
import io.netty.buffer.Unpooled;
import net.minecraft.entity.player.EntityPlayer;
import java.io.IOException;
import java.util.HashMap;
+import java.util.List;
import java.util.Map;
import java.util.UUID;
+import java.util.ArrayList;
public abstract class LargeAbstractPacket extends AbstractPacket {
private static final int CHUNK_SIZE = 10000;
@@ -55,6 +58,33 @@ public abstract class LargeAbstractPacket extends AbstractPacket {
}
}
+ public final List generatePacketChunks() {
+ List chunks = new ArrayList<>();
+ ByteBuf data = Unpooled.buffer();
+ try {
+ writeData(data);
+ int totalSize = data.readableBytes();
+ UUID packetId = UUID.randomUUID();
+ int totalChunks = (int) Math.ceil((double) totalSize / CHUNK_SIZE);
+
+ for (int i = 0; i < totalSize; i += CHUNK_SIZE) {
+ int chunkSize = Math.min(CHUNK_SIZE, totalSize - i);
+ ByteBuf chunk = data.readBytes(chunkSize);
+ ByteBuf out = Unpooled.buffer();
+ out.writeLong(packetId.getMostSignificantBits());
+ out.writeLong(packetId.getLeastSignificantBits());
+ out.writeInt(totalSize);
+ out.writeInt(i);
+ out.writeInt(totalChunks);
+ out.writeBytes(chunk);
+ chunks.add(new FMLProxyPacket(out, getChannel().getChannelName()));
+ }
+ } catch (IOException e) {
+ e.printStackTrace();
+ }
+ return chunks;
+ }
+
public abstract void writeData(ByteBuf out) throws IOException;
public abstract void handleData(ByteBuf data, EntityPlayer player) throws IOException;
diff --git a/src/main/java/kamkeel/npcs/network/PacketHandler.java b/src/main/java/kamkeel/npcs/network/PacketHandler.java
index 8c0d49162..86bc5e7a3 100644
--- a/src/main/java/kamkeel/npcs/network/PacketHandler.java
+++ b/src/main/java/kamkeel/npcs/network/PacketHandler.java
@@ -17,6 +17,7 @@ import noppes.npcs.CustomNpcs;
import java.io.IOException;
import java.util.*;
+import java.util.function.Consumer;
public final class PacketHandler {
public static PacketHandler Instance;
@@ -116,48 +117,39 @@ public final class PacketHandler {
}
}
- public void sendToPlayer(AbstractPacket packet, EntityPlayerMP player) {
+ public void sendPacket(AbstractPacket packet, Consumer sendFunction) {
try {
- FMLProxyPacket proxyPacket = packet.generatePacket();
- getEventChannel(packet).sendTo(proxyPacket, player);
+ if (packet instanceof LargeAbstractPacket) {
+ List chunks = ((LargeAbstractPacket) packet).generatePacketChunks();
+ for (FMLProxyPacket chunk : chunks) {
+ sendFunction.accept(chunk);
+ }
+ } else {
+ FMLProxyPacket proxyPacket = packet.generatePacket();
+ sendFunction.accept(proxyPacket);
+ }
} catch (Exception e) {
e.printStackTrace();
}
}
+ public void sendToPlayer(AbstractPacket packet, EntityPlayerMP player) {
+ sendPacket(packet, proxyPacket -> getEventChannel(packet).sendTo(proxyPacket, player));
+ }
+
public void sendToServer(AbstractPacket packet) {
- try {
- FMLProxyPacket proxyPacket = packet.generatePacket();
- getEventChannel(packet).sendToServer(proxyPacket);
- } catch (Exception e) {
- e.printStackTrace();
- }
+ sendPacket(packet, proxyPacket -> getEventChannel(packet).sendToServer(proxyPacket));
}
public void sendToAll(AbstractPacket packet) {
- try {
- FMLProxyPacket proxyPacket = packet.generatePacket();
- getEventChannel(packet).sendToAll(proxyPacket);
- } catch (Exception e) {
- e.printStackTrace();
- }
+ sendPacket(packet, proxyPacket -> getEventChannel(packet).sendToAll(proxyPacket));
}
public void sendToAllAround(AbstractPacket packet, NetworkRegistry.TargetPoint point) {
- try {
- FMLProxyPacket proxyPacket = packet.generatePacket();
- getEventChannel(packet).sendToAllAround(proxyPacket, point);
- } catch (Exception e) {
- e.printStackTrace();
- }
+ sendPacket(packet, proxyPacket -> getEventChannel(packet).sendToAllAround(proxyPacket, point));
}
public void sendToDimension(AbstractPacket packet, int dimensionId) {
- try {
- FMLProxyPacket proxyPacket = packet.generatePacket();
- getEventChannel(packet).sendToDimension(proxyPacket, dimensionId);
- } catch (Exception e) {
- e.printStackTrace();
- }
+ sendPacket(packet, proxyPacket -> getEventChannel(packet).sendToDimension(proxyPacket, dimensionId));
}
}
From f573259fd1504cffd63ced2429b28ec23ad10735 Mon Sep 17 00:00:00 2001
From: Kam
Date: Wed, 29 Jan 2025 15:04:19 -0500
Subject: [PATCH 014/357] Complete Large Packet Sending
---
.../npcs/network/LargeAbstractPacket.java | 130 +++++++++++-------
.../kamkeel/npcs/network/PacketHandler.java | 121 ++++++++--------
.../client/DisableMouseInputPacket.java | 1 +
.../network/packets/client/MessagePacket.java | 13 +-
.../packets/client/TeleporterPacket.java | 3 +-
.../packets/large/LargeScrollDataPacket.java | 23 +++-
.../packets/large/LargeScrollGroupPacket.java | 17 ++-
.../packets/large/LargeScrollListPacket.java | 14 +-
src/main/java/noppes/npcs/CustomNpcs.java | 8 ++
.../java/noppes/npcs/NoppesUtilServer.java | 26 ++--
.../java/noppes/npcs/PacketHandlerServer.java | 15 +-
11 files changed, 219 insertions(+), 152 deletions(-)
diff --git a/src/main/java/kamkeel/npcs/network/LargeAbstractPacket.java b/src/main/java/kamkeel/npcs/network/LargeAbstractPacket.java
index 2ad5a526a..6d97f1e83 100644
--- a/src/main/java/kamkeel/npcs/network/LargeAbstractPacket.java
+++ b/src/main/java/kamkeel/npcs/network/LargeAbstractPacket.java
@@ -1,38 +1,43 @@
package kamkeel.npcs.network;
-import cpw.mods.fml.common.network.internal.FMLProxyPacket;
+
import io.netty.buffer.ByteBuf;
import io.netty.buffer.Unpooled;
import net.minecraft.entity.player.EntityPlayer;
+import org.lwjgl.Sys;
import java.io.IOException;
-import java.util.HashMap;
-import java.util.List;
import java.util.Map;
import java.util.UUID;
-import java.util.ArrayList;
+import java.util.concurrent.ConcurrentHashMap;
public abstract class LargeAbstractPacket extends AbstractPacket {
- private static final int CHUNK_SIZE = 10000;
- private static final Map packetChunks = new HashMap<>();
- private static final Map receivedChunks = new HashMap<>();
+
+ private static final Map packetChunks = new ConcurrentHashMap<>();
+ private static final int CHUNK_SIZE = 5000;
@Override
public void sendData(ByteBuf out) throws IOException {
- ByteBuf data = Unpooled.buffer();
- writeData(data);
- int totalSize = data.readableBytes();
- UUID packetId = UUID.randomUUID(); // Unique ID for this packet
- int totalChunks = (int) Math.ceil((double) totalSize / CHUNK_SIZE);
+ byte[] data = getData();
+ int totalSize = data.length;
+ UUID packetId = UUID.randomUUID();
- for (int i = 0; i < totalSize; i += CHUNK_SIZE) {
- int chunkSize = Math.min(CHUNK_SIZE, totalSize - i);
- ByteBuf chunk = data.readBytes(chunkSize);
+ System.out.println("Sending data with packetId: " + packetId + ", totalSize: " + totalSize);
+
+ // Break the data into chunks of CHUNK_SIZE bytes each
+ for (int offset = 0; offset < totalSize; offset += CHUNK_SIZE) {
+ int chunkSize = Math.min(CHUNK_SIZE, totalSize - offset);
+
+ // Write a header for each chunk
out.writeLong(packetId.getMostSignificantBits());
out.writeLong(packetId.getLeastSignificantBits());
out.writeInt(totalSize);
- out.writeInt(i);
- out.writeInt(totalChunks);
- out.writeBytes(chunk);
+ out.writeInt(offset);
+ out.writeInt((totalSize + CHUNK_SIZE - 1) / CHUNK_SIZE); // totalChunks
+
+ // Write the chunk bytes
+ out.writeBytes(data, offset, chunkSize);
+
+ System.out.println("Sent chunk with offset: " + offset + ", size: " + chunkSize);
}
}
@@ -41,51 +46,70 @@ public abstract class LargeAbstractPacket extends AbstractPacket {
long mostSigBits = in.readLong();
long leastSigBits = in.readLong();
UUID packetId = new UUID(mostSigBits, leastSigBits);
+
int totalSize = in.readInt();
int offset = in.readInt();
- int totalChunks = in.readInt();
- ByteBuf chunk = in.readBytes(in.readableBytes());
+ int totalChunks = in.readInt(); // Currently unused aside from potential debugging/verification
+ int chunkSize = Math.min(CHUNK_SIZE, totalSize - offset);
- ByteBuf data = packetChunks.computeIfAbsent(packetId, k -> Unpooled.buffer(totalSize));
- data.setBytes(offset, chunk);
+ // Basic validation to ensure the chunk won't overwrite out of bounds
+ if (chunkSize <= 0 || offset < 0 || (offset + chunkSize) > totalSize) {
+ throw new IndexOutOfBoundsException("Invalid chunk size/offset: chunkSize="
+ + chunkSize + ", offset=" + offset + ", totalSize=" + totalSize);
+ }
- int receivedChunkCount = receivedChunks.compute(packetId, (k, v) -> (v == null) ? 1 : v + 1);
+ // Read the exact chunk data
+ ByteBuf chunk = in.readBytes(chunkSize);
- if (receivedChunkCount == totalChunks) {
+ System.out.println("Receiving data: packetId=" + packetId
+ + ", totalSize=" + totalSize
+ + ", offset=" + offset
+ + ", chunkSize=" + chunkSize);
+
+ // Store the received chunk in a PacketStorage
+ PacketStorage storage = packetChunks.computeIfAbsent(packetId,
+ k -> new PacketStorage(Unpooled.buffer(totalSize), 0, totalSize));
+
+ // Write this chunk into the buffer at the correct offset
+ storage.data.setBytes(offset, chunk);
+ storage.receivedSoFar += chunkSize;
+
+ // If we've received all bytes, finalize
+ if (storage.receivedSoFar >= totalSize) {
+ // Remove from the map to clean up
packetChunks.remove(packetId);
- receivedChunks.remove(packetId);
- handleData(data, player);
+
+ // We now have the complete data in storage.data
+ // Copy (or slice) the exact bytes, then handle them
+ ByteBuf completeData = storage.data.copy(0, totalSize);
+
+ System.out.println("Received complete data for packetId: " + packetId);
+
+ // Clean up and handle
+ storage.data.release();
+ handleCompleteData(completeData, player);
+ completeData.release();
}
+
+ chunk.release();
}
- public final List generatePacketChunks() {
- List chunks = new ArrayList<>();
- ByteBuf data = Unpooled.buffer();
- try {
- writeData(data);
- int totalSize = data.readableBytes();
- UUID packetId = UUID.randomUUID();
- int totalChunks = (int) Math.ceil((double) totalSize / CHUNK_SIZE);
+ protected abstract byte[] getData() throws IOException;
- for (int i = 0; i < totalSize; i += CHUNK_SIZE) {
- int chunkSize = Math.min(CHUNK_SIZE, totalSize - i);
- ByteBuf chunk = data.readBytes(chunkSize);
- ByteBuf out = Unpooled.buffer();
- out.writeLong(packetId.getMostSignificantBits());
- out.writeLong(packetId.getLeastSignificantBits());
- out.writeInt(totalSize);
- out.writeInt(i);
- out.writeInt(totalChunks);
- out.writeBytes(chunk);
- chunks.add(new FMLProxyPacket(out, getChannel().getChannelName()));
- }
- } catch (IOException e) {
- e.printStackTrace();
+ protected abstract void handleCompleteData(ByteBuf data, EntityPlayer player) throws IOException;
+
+ /**
+ * Simple storage class to keep track of partial data and how many bytes we've received so far.
+ */
+ private static class PacketStorage {
+ final ByteBuf data;
+ int receivedSoFar;
+ final int totalSize;
+
+ PacketStorage(ByteBuf data, int receivedSoFar, int totalSize) {
+ this.data = data;
+ this.receivedSoFar = receivedSoFar;
+ this.totalSize = totalSize;
}
- return chunks;
}
-
- public abstract void writeData(ByteBuf out) throws IOException;
-
- public abstract void handleData(ByteBuf data, EntityPlayer player) throws IOException;
}
diff --git a/src/main/java/kamkeel/npcs/network/PacketHandler.java b/src/main/java/kamkeel/npcs/network/PacketHandler.java
index 86bc5e7a3..ecc5dbe75 100644
--- a/src/main/java/kamkeel/npcs/network/PacketHandler.java
+++ b/src/main/java/kamkeel/npcs/network/PacketHandler.java
@@ -15,7 +15,6 @@ import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.network.NetHandlerPlayServer;
import noppes.npcs.CustomNpcs;
-import java.io.IOException;
import java.util.*;
import java.util.function.Consumer;
@@ -43,6 +42,9 @@ public final class PacketHandler {
LARGE_PACKET.registerPacket(new LargeScrollGroupPacket());
LARGE_PACKET.registerPacket(new LargeScrollDataPacket());
LARGE_PACKET.registerPacket(new LargeScrollListPacket());
+
+ // Log channel registration
+ System.out.println("PacketHandler initialized and channels registered.");
}
public void registerChannels() {
@@ -51,105 +53,110 @@ public final class PacketHandler {
eventChannel = NetworkRegistry.INSTANCE.newEventDrivenChannel(channel.getChannelName());
eventChannel.register(this);
channels.put(channel.getChannelType(), eventChannel);
+ System.out.println("Registered channel: " + channel.getChannelName());
}
}
public PacketChannel getPacketChannel(EnumPacketType type){
- PacketChannel packetChannel;
- switch (type){
- case DATA:
- packetChannel = DATA_PACKET;
- break;
- case INFO:
- packetChannel = INFO_PACKET;
- break;
- case LARGE:
- packetChannel = LARGE_PACKET;
- break;
- default:
- packetChannel = CLIENT_PACKET;
- break;
- }
- return packetChannel;
+ return packetChannels.stream()
+ .filter(channel -> channel.getChannelType() == type)
+ .findFirst()
+ .orElse(null);
}
public FMLEventChannel getEventChannel(AbstractPacket abstractPacket){
- return channels.get(getPacketChannel(abstractPacket.getChannel().getChannelType()));
+ PacketChannel packetChannel = getPacketChannel(abstractPacket.getChannel().getChannelType());
+ if (packetChannel == null) {
+ return null;
+ }
+ return channels.get(packetChannel.getChannelType());
}
@SubscribeEvent
public void onServerPacket(FMLNetworkEvent.ServerCustomPacketEvent event) {
- try {
- handlePacket(event.packet, ((NetHandlerPlayServer) event.handler).playerEntity);
- } catch (Exception e) {
- e.printStackTrace();
- }
+ handlePacket(event.packet, ((NetHandlerPlayServer) event.handler).playerEntity);
}
@SubscribeEvent
public void onClientPacket(FMLNetworkEvent.ClientCustomPacketEvent event) {
- try {
- handlePacket(event.packet, CustomNpcs.proxy.getPlayer());
- } catch (Exception e) {
- e.printStackTrace();
- }
+ handlePacket(event.packet, CustomNpcs.proxy.getPlayer());
}
private void handlePacket(FMLProxyPacket packet, EntityPlayer player) {
ByteBuf buf = packet.payload();
try {
- int channelTypeOrdinal = buf.readInt();
int packetTypeOrdinal = buf.readInt();
-
- EnumPacketType channelType = EnumPacketType.values()[channelTypeOrdinal];
- PacketChannel packetChannel = getPacketChannel(channelType);
-
- AbstractPacket abstractPacket = packetChannel.packets.get(packetTypeOrdinal);
- if (abstractPacket != null) {
- try {
- abstractPacket.receiveData(buf, player);
- } catch (IOException e) {
- e.printStackTrace();
- }
+ EnumPacketType packetType = EnumPacketType.values()[packetTypeOrdinal];
+ PacketChannel packetChannel = getPacketChannel(packetType);
+ if (packetChannel == null) {
+ System.err.println("Error: Packet channel is null for packet type: " + packetType);
+ return;
}
+ int packetId = buf.readInt();
+ AbstractPacket abstractPacket = packetChannel.packets.get(packetId);
+ if (abstractPacket == null) {
+ System.err.println("Error: Abstract packet is null for packet ID: " + packetId);
+ return;
+ }
+ abstractPacket.receiveData(buf, player);
+ } catch (IndexOutOfBoundsException e) {
+ System.err.println("Error: IndexOutOfBoundsException in handlePacket: " + e.getMessage());
+ e.printStackTrace();
} catch (Exception e) {
+ System.err.println("Error: Exception in handlePacket: " + e.getMessage());
e.printStackTrace();
}
}
public void sendPacket(AbstractPacket packet, Consumer sendFunction) {
- try {
- if (packet instanceof LargeAbstractPacket) {
- List chunks = ((LargeAbstractPacket) packet).generatePacketChunks();
- for (FMLProxyPacket chunk : chunks) {
- sendFunction.accept(chunk);
- }
- } else {
- FMLProxyPacket proxyPacket = packet.generatePacket();
- sendFunction.accept(proxyPacket);
- }
- } catch (Exception e) {
- e.printStackTrace();
+ FMLProxyPacket proxyPacket = packet.generatePacket();
+ if (proxyPacket != null) {
+ sendFunction.accept(proxyPacket);
}
}
public void sendToPlayer(AbstractPacket packet, EntityPlayerMP player) {
- sendPacket(packet, proxyPacket -> getEventChannel(packet).sendTo(proxyPacket, player));
+ FMLEventChannel eventChannel = getEventChannel(packet);
+ if (eventChannel == null) {
+ System.err.println("Error: Event channel is null for packet: " + packet.getClass().getName());
+ return;
+ }
+ sendPacket(packet, proxyPacket -> eventChannel.sendTo(proxyPacket, player));
}
public void sendToServer(AbstractPacket packet) {
- sendPacket(packet, proxyPacket -> getEventChannel(packet).sendToServer(proxyPacket));
+ FMLEventChannel eventChannel = getEventChannel(packet);
+ if (eventChannel == null) {
+ System.err.println("Error: Event channel is null for packet: " + packet.getClass().getName());
+ return;
+ }
+ sendPacket(packet, eventChannel::sendToServer);
}
public void sendToAll(AbstractPacket packet) {
- sendPacket(packet, proxyPacket -> getEventChannel(packet).sendToAll(proxyPacket));
+ FMLEventChannel eventChannel = getEventChannel(packet);
+ if (eventChannel == null) {
+ System.err.println("Error: Event channel is null for packet: " + packet.getClass().getName());
+ return;
+ }
+ sendPacket(packet, eventChannel::sendToAll);
}
public void sendToAllAround(AbstractPacket packet, NetworkRegistry.TargetPoint point) {
- sendPacket(packet, proxyPacket -> getEventChannel(packet).sendToAllAround(proxyPacket, point));
+ FMLEventChannel eventChannel = getEventChannel(packet);
+ if (eventChannel == null) {
+ System.err.println("Error: Event channel is null for packet: " + packet.getClass().getName());
+ return;
+ }
+ sendPacket(packet, proxyPacket -> eventChannel.sendToAllAround(proxyPacket, point));
}
public void sendToDimension(AbstractPacket packet, int dimensionId) {
- sendPacket(packet, proxyPacket -> getEventChannel(packet).sendToDimension(proxyPacket, dimensionId));
+ FMLEventChannel eventChannel = getEventChannel(packet);
+ if (eventChannel == null) {
+ System.err.println("Error: Event channel is null for packet: " + packet.getClass().getName());
+ return;
+ }
+ sendPacket(packet, proxyPacket -> eventChannel.sendToDimension(proxyPacket, dimensionId));
}
}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/DisableMouseInputPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/DisableMouseInputPacket.java
index e25032599..c2c2b4d21 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/DisableMouseInputPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/DisableMouseInputPacket.java
@@ -6,6 +6,7 @@ import kamkeel.npcs.network.PacketChannel;
import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.entity.player.EntityPlayer;
+import noppes.npcs.Server;
import noppes.npcs.client.ClientEventHandler;
import java.io.IOException;
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/MessagePacket.java b/src/main/java/kamkeel/npcs/network/packets/client/MessagePacket.java
index 59aa475fe..f1e00a55a 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/MessagePacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/MessagePacket.java
@@ -42,11 +42,12 @@ public final class MessagePacket extends AbstractPacket {
if(CustomNpcs.side() != Side.CLIENT)
return;
- String description = StatCollector.translateToLocal(Server.readString(in));
- String message = Server.readString(in);
- Achievement achievement = new Achievement(message, description);
- GuiAchievement guiAchievement = Minecraft.getMinecraft().guiAchievement;
- guiAchievement.func_146256_a(achievement);
- ObfuscationReflectionHelper.setPrivateValue(GuiAchievement.class, guiAchievement, achievement.getDescription(), 4);
+ // TODO: Fix Message Packet
+// String description = StatCollector.translateToLocal(Server.readString(in));
+// String message = Server.readString(in);
+// Achievement achievement = new Achievement(message, description);
+// GuiAchievement guiAchievement = Minecraft.getMinecraft().guiAchievement;
+// guiAchievement.func_146256_a(achievement);
+// ObfuscationReflectionHelper.setPrivateValue(GuiAchievement.class, guiAchievement, achievement.getDescription(), 4);
}
}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/TeleporterPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/TeleporterPacket.java
index f6df09f6b..1063f703e 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/TeleporterPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/TeleporterPacket.java
@@ -8,6 +8,7 @@ import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.entity.player.EntityPlayer;
import noppes.npcs.CustomNpcs;
import noppes.npcs.constants.EnumGuiType;
+import noppes.npcs.entity.EntityNPCInterface;
import java.io.IOException;
@@ -33,6 +34,6 @@ public final class TeleporterPacket extends AbstractPacket {
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- CustomNpcs.proxy.openGui(null, EnumGuiType.NpcDimensions);
+ CustomNpcs.proxy.openGui((EntityNPCInterface)null,EnumGuiType.NpcDimensions);
}
}
diff --git a/src/main/java/kamkeel/npcs/network/packets/large/LargeScrollDataPacket.java b/src/main/java/kamkeel/npcs/network/packets/large/LargeScrollDataPacket.java
index 9a31961d6..387d6c17c 100644
--- a/src/main/java/kamkeel/npcs/network/packets/large/LargeScrollDataPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/large/LargeScrollDataPacket.java
@@ -1,6 +1,7 @@
package kamkeel.npcs.network.packets.large;
import io.netty.buffer.ByteBuf;
+import io.netty.buffer.Unpooled;
import kamkeel.npcs.network.LargeAbstractPacket;
import kamkeel.npcs.network.PacketChannel;
import kamkeel.npcs.network.PacketHandler;
@@ -10,6 +11,7 @@ import net.minecraft.entity.player.EntityPlayer;
import noppes.npcs.client.NoppesUtil;
import java.io.IOException;
+import java.util.HashMap;
import java.util.Map;
public final class LargeScrollDataPacket extends LargeAbstractPacket {
@@ -34,16 +36,27 @@ public final class LargeScrollDataPacket extends LargeAbstractPacket {
}
@Override
- public void writeData(ByteBuf out) throws IOException {
- out.writeInt(data.size());
+ protected byte[] getData() throws IOException {
+ ByteBuf buffer = Unpooled.buffer();
+ buffer.writeInt(data.size());
for (Map.Entry entry : data.entrySet()) {
- ByteBufUtils.writeString(out, entry.getKey());
- out.writeInt(entry.getValue());
+ buffer.writeInt(entry.getValue());
+ ByteBufUtils.writeString(buffer, entry.getKey());
}
+ byte[] bytes = new byte[buffer.readableBytes()];
+ buffer.readBytes(bytes);
+ System.out.println("getData: Written data to buffer: " + buffer.toString());
+ return bytes;
}
@Override
- public void handleData(ByteBuf data, EntityPlayer player) throws IOException {
+ protected void handleCompleteData(ByteBuf data, EntityPlayer player) throws IOException {
+ if (data == null || data.readableBytes() <= 0) {
+ System.err.println("LargeScrollDataPacket: ByteBuf is empty or already read.");
+ return;
+ }
+ data.readerIndex(0);
+ System.out.println("handleCompleteData: Reading data from buffer: " + data.toString());
NoppesUtil.setScrollData(data);
}
}
diff --git a/src/main/java/kamkeel/npcs/network/packets/large/LargeScrollGroupPacket.java b/src/main/java/kamkeel/npcs/network/packets/large/LargeScrollGroupPacket.java
index 40a1a2f4f..bd3ef8dd5 100644
--- a/src/main/java/kamkeel/npcs/network/packets/large/LargeScrollGroupPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/large/LargeScrollGroupPacket.java
@@ -1,6 +1,7 @@
package kamkeel.npcs.network.packets.large;
import io.netty.buffer.ByteBuf;
+import io.netty.buffer.Unpooled;
import kamkeel.npcs.network.LargeAbstractPacket;
import kamkeel.npcs.network.PacketChannel;
import kamkeel.npcs.network.PacketHandler;
@@ -34,16 +35,20 @@ public final class LargeScrollGroupPacket extends LargeAbstractPacket {
}
@Override
- public void writeData(ByteBuf out) throws IOException {
- out.writeInt(data.size());
+ protected byte[] getData() throws IOException {
+ ByteBuf buffer = Unpooled.buffer();
+ buffer.writeInt(data.size());
for (Map.Entry entry : data.entrySet()) {
- ByteBufUtils.writeString(out, entry.getKey());
- out.writeInt(entry.getValue());
+ ByteBufUtils.writeString(buffer, entry.getKey());
+ buffer.writeInt(entry.getValue());
}
+ byte[] bytes = new byte[buffer.readableBytes()];
+ buffer.readBytes(bytes);
+ return bytes;
}
@Override
- public void handleData(ByteBuf data, EntityPlayer player) throws IOException {
- NoppesUtil.setScrollGroup(data);
+ protected void handleCompleteData(ByteBuf data, EntityPlayer player) throws IOException {
+ NoppesUtil.setScrollData(data);
}
}
diff --git a/src/main/java/kamkeel/npcs/network/packets/large/LargeScrollListPacket.java b/src/main/java/kamkeel/npcs/network/packets/large/LargeScrollListPacket.java
index b2e8d5af5..6c71dc81d 100644
--- a/src/main/java/kamkeel/npcs/network/packets/large/LargeScrollListPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/large/LargeScrollListPacket.java
@@ -1,7 +1,7 @@
-// src/main/java/kamkeel/network/packets/large/LargeScrollListPacket.java
package kamkeel.npcs.network.packets.large;
import io.netty.buffer.ByteBuf;
+import io.netty.buffer.Unpooled;
import kamkeel.npcs.network.LargeAbstractPacket;
import kamkeel.npcs.network.PacketChannel;
import kamkeel.npcs.network.PacketHandler;
@@ -35,15 +35,19 @@ public final class LargeScrollListPacket extends LargeAbstractPacket {
}
@Override
- public void writeData(ByteBuf out) throws IOException {
- out.writeInt(data.size());
+ protected byte[] getData() throws IOException {
+ ByteBuf buffer = Unpooled.buffer();
+ buffer.writeInt(data.size());
for (String entry : data) {
- ByteBufUtils.writeString(out, entry);
+ ByteBufUtils.writeString(buffer, entry);
}
+ byte[] bytes = new byte[buffer.readableBytes()];
+ buffer.readBytes(bytes);
+ return bytes;
}
@Override
- public void handleData(ByteBuf data, EntityPlayer player) throws IOException {
+ protected void handleCompleteData(ByteBuf data, EntityPlayer player) throws IOException {
NoppesUtil.setScrollList(data);
}
}
diff --git a/src/main/java/noppes/npcs/CustomNpcs.java b/src/main/java/noppes/npcs/CustomNpcs.java
index 4e800cbd7..0acc85a7d 100644
--- a/src/main/java/noppes/npcs/CustomNpcs.java
+++ b/src/main/java/noppes/npcs/CustomNpcs.java
@@ -16,6 +16,7 @@ import kamkeel.npcs.command.profile.CommandProfile;
import kamkeel.npcs.controllers.ProfileController;
import kamkeel.npcs.controllers.data.CNPCData;
import kamkeel.npcs.developer.Developer;
+import kamkeel.npcs.network.PacketHandler;
import net.minecraft.block.Block;
import net.minecraft.block.BlockIce;
import net.minecraft.block.BlockLeavesBase;
@@ -249,6 +250,13 @@ public class CustomNpcs {
ServerTagMapController.Instance = new ServerTagMapController();
}
+ //Loading items in the about to start event was corrupting items with a damage value
+ @EventHandler
+ public void postInit(FMLPostInitializationEvent event) {
+ PacketHandler.Instance = new PacketHandler();
+ }
+
+
@EventHandler
public void stopped(FMLServerStoppedEvent event){
ServerCloneController.Instance = null;
diff --git a/src/main/java/noppes/npcs/NoppesUtilServer.java b/src/main/java/noppes/npcs/NoppesUtilServer.java
index ae7dcb408..313b56b61 100644
--- a/src/main/java/noppes/npcs/NoppesUtilServer.java
+++ b/src/main/java/noppes/npcs/NoppesUtilServer.java
@@ -49,6 +49,8 @@ import java.text.DecimalFormat;
import java.util.*;
import java.util.zip.GZIPOutputStream;
+import static kamkeel.npcs.network.KamUtilServer.sendScrollData;
+
public class NoppesUtilServer {
private static HashMap editingQuests = new HashMap();
@@ -505,7 +507,7 @@ public class NoppesUtilServer {
}
}
- NoppesUtilServer.sendScrollData(player, map);
+ sendScrollData(player, map);
}
public static void removePlayerData(ByteBuf buffer, EntityPlayerMP player) throws IOException {
@@ -593,17 +595,17 @@ public class NoppesUtilServer {
}
sendScrollData(player, map);
}
- public static void sendScrollData(EntityPlayerMP player, Map map){
- Map send = new HashMap();
- for(String key : map.keySet()){
- send.put(key, map.get(key));
- if(send.size() == 100){
- Server.sendData(player, EnumPacketClient.SCROLL_DATA_PART, send);
- send = new HashMap();
- }
- }
- Server.sendData(player, EnumPacketClient.SCROLL_DATA, send);
- }
+// public static void sendScrollData(EntityPlayerMP player, Map map){
+// Map send = new HashMap();
+// for(String key : map.keySet()){
+// send.put(key, map.get(key));
+// if(send.size() == 100){
+// Server.sendData(player, EnumPacketClient.SCROLL_DATA_PART, send);
+// send = new HashMap();
+// }
+// }
+// Server.sendData(player, EnumPacketClient.SCROLL_DATA, send);
+// }
public static void sendScrollGroup(EntityPlayerMP player, Map map){
Map send = new HashMap();
diff --git a/src/main/java/noppes/npcs/PacketHandlerServer.java b/src/main/java/noppes/npcs/PacketHandlerServer.java
index 4f5bbb9d6..149a3db47 100644
--- a/src/main/java/noppes/npcs/PacketHandlerServer.java
+++ b/src/main/java/noppes/npcs/PacketHandlerServer.java
@@ -6,6 +6,7 @@ import cpw.mods.fml.common.network.FMLNetworkEvent.ServerCustomPacketEvent;
import cpw.mods.fml.relauncher.Side;
import foxz.utils.Market;
import io.netty.buffer.ByteBuf;
+import kamkeel.npcs.network.KamUtilServer;
import net.minecraft.entity.Entity;
import net.minecraft.entity.EntityList;
import net.minecraft.entity.passive.EntityVillager;
@@ -102,7 +103,7 @@ public class PacketHandlerServer{
WorldProvider provider = DimensionManager.createProviderFor(id);
map.put(provider.getDimensionName(), id);
}
- NoppesUtilServer.sendScrollData(player, map);
+ KamUtilServer.sendScrollData(player, map);
} else if(type == EnumPacketServer.TagsGet){
NoppesUtilServer.sendTagDataAll(player);
} else if (type == EnumPacketServer.NpcTagsGet) {
@@ -584,7 +585,7 @@ public class PacketHandlerServer{
Server.sendData(player, EnumPacketClient.GUI_DATA, compound);
}
else if(type == EnumPacketServer.DialogCategoriesGet){
- NoppesUtilServer.sendScrollData(player, DialogController.Instance.getScroll());
+ KamUtilServer.sendScrollData(player, DialogController.Instance.getScroll());
}
else if(type == EnumPacketServer.DialogsGetFromDialog){
Dialog dialog = DialogController.Instance.dialogs.get(buffer.readInt());
@@ -797,7 +798,7 @@ public class PacketHandlerServer{
NoppesUtilServer.setRecipeGui(player,recipe);
}
else if(type == EnumPacketServer.NaturalSpawnGetAll){
- NoppesUtilServer.sendScrollData(player, SpawnController.Instance.getScroll());
+ KamUtilServer.sendScrollData(player, SpawnController.Instance.getScroll());
}
else if(type == EnumPacketServer.NaturalSpawnGet){
SpawnData spawn = SpawnController.Instance.getSpawnData(buffer.readInt());
@@ -810,21 +811,21 @@ public class PacketHandlerServer{
data.readNBT(Server.readNBT(buffer));
SpawnController.Instance.saveSpawnData(data);
- NoppesUtilServer.sendScrollData(player, SpawnController.Instance.getScroll());
+ KamUtilServer.sendScrollData(player, SpawnController.Instance.getScroll());
}
else if(type == EnumPacketServer.NaturalSpawnRemove){
SpawnController.Instance.removeSpawnData(buffer.readInt());
- NoppesUtilServer.sendScrollData(player, SpawnController.Instance.getScroll());
+ KamUtilServer.sendScrollData(player, SpawnController.Instance.getScroll());
}
else if(type == EnumPacketServer.DialogCategorySave){
DialogCategory category = new DialogCategory();
category.readNBT(Server.readNBT(buffer));
DialogController.Instance.saveCategory(category);
- NoppesUtilServer.sendScrollData(player, DialogController.Instance.getScroll());
+ KamUtilServer.sendScrollData(player, DialogController.Instance.getScroll());
}
else if(type == EnumPacketServer.DialogCategoryRemove){
DialogController.Instance.removeCategory(buffer.readInt());
- NoppesUtilServer.sendScrollData(player, DialogController.Instance.getScroll());
+ KamUtilServer.sendScrollData(player, DialogController.Instance.getScroll());
}
else if(type == EnumPacketServer.DialogCategoryGet){
DialogCategory category = DialogController.Instance.categories.get(buffer.readInt());
From dcf3a0d8b09f88515274eb27486c680169126818 Mon Sep 17 00:00:00 2001
From: Kam
Date: Wed, 29 Jan 2025 15:08:24 -0500
Subject: [PATCH 015/357] Fix Packet Logging
---
.../npcs/network/LargeAbstractPacket.java | 11 ---------
.../kamkeel/npcs/network/PacketHandler.java | 23 +++++++++----------
.../packets/large/LargeScrollDataPacket.java | 7 ------
.../packets/large/LargeScrollGroupPacket.java | 2 +-
4 files changed, 12 insertions(+), 31 deletions(-)
diff --git a/src/main/java/kamkeel/npcs/network/LargeAbstractPacket.java b/src/main/java/kamkeel/npcs/network/LargeAbstractPacket.java
index 6d97f1e83..261eb8f4e 100644
--- a/src/main/java/kamkeel/npcs/network/LargeAbstractPacket.java
+++ b/src/main/java/kamkeel/npcs/network/LargeAbstractPacket.java
@@ -21,8 +21,6 @@ public abstract class LargeAbstractPacket extends AbstractPacket {
int totalSize = data.length;
UUID packetId = UUID.randomUUID();
- System.out.println("Sending data with packetId: " + packetId + ", totalSize: " + totalSize);
-
// Break the data into chunks of CHUNK_SIZE bytes each
for (int offset = 0; offset < totalSize; offset += CHUNK_SIZE) {
int chunkSize = Math.min(CHUNK_SIZE, totalSize - offset);
@@ -36,8 +34,6 @@ public abstract class LargeAbstractPacket extends AbstractPacket {
// Write the chunk bytes
out.writeBytes(data, offset, chunkSize);
-
- System.out.println("Sent chunk with offset: " + offset + ", size: " + chunkSize);
}
}
@@ -61,11 +57,6 @@ public abstract class LargeAbstractPacket extends AbstractPacket {
// Read the exact chunk data
ByteBuf chunk = in.readBytes(chunkSize);
- System.out.println("Receiving data: packetId=" + packetId
- + ", totalSize=" + totalSize
- + ", offset=" + offset
- + ", chunkSize=" + chunkSize);
-
// Store the received chunk in a PacketStorage
PacketStorage storage = packetChunks.computeIfAbsent(packetId,
k -> new PacketStorage(Unpooled.buffer(totalSize), 0, totalSize));
@@ -83,8 +74,6 @@ public abstract class LargeAbstractPacket extends AbstractPacket {
// Copy (or slice) the exact bytes, then handle them
ByteBuf completeData = storage.data.copy(0, totalSize);
- System.out.println("Received complete data for packetId: " + packetId);
-
// Clean up and handle
storage.data.release();
handleCompleteData(completeData, player);
diff --git a/src/main/java/kamkeel/npcs/network/PacketHandler.java b/src/main/java/kamkeel/npcs/network/PacketHandler.java
index ecc5dbe75..33dd11cf7 100644
--- a/src/main/java/kamkeel/npcs/network/PacketHandler.java
+++ b/src/main/java/kamkeel/npcs/network/PacketHandler.java
@@ -14,6 +14,7 @@ import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.network.NetHandlerPlayServer;
import noppes.npcs.CustomNpcs;
+import noppes.npcs.LogWriter;
import java.util.*;
import java.util.function.Consumer;
@@ -28,7 +29,7 @@ public final class PacketHandler {
public final static PacketChannel CLIENT_PACKET = new PacketChannel("CNPC+|Client", EnumPacketType.CLIENT);
public final static PacketChannel LARGE_PACKET = new PacketChannel("CNPC+|Large", EnumPacketType.LARGE);
- public final static List packetChannels = new ArrayList<>();
+ private final static List packetChannels = new ArrayList<>();
public PacketHandler() {
// Register Channels
@@ -89,22 +90,20 @@ public final class PacketHandler {
EnumPacketType packetType = EnumPacketType.values()[packetTypeOrdinal];
PacketChannel packetChannel = getPacketChannel(packetType);
if (packetChannel == null) {
- System.err.println("Error: Packet channel is null for packet type: " + packetType);
+ LogWriter.error("Error: Packet channel is null for packet type: " + packetType);
return;
}
int packetId = buf.readInt();
AbstractPacket abstractPacket = packetChannel.packets.get(packetId);
if (abstractPacket == null) {
- System.err.println("Error: Abstract packet is null for packet ID: " + packetId);
+ LogWriter.error("Error: Abstract packet is null for packet ID: " + packetId);
return;
}
abstractPacket.receiveData(buf, player);
} catch (IndexOutOfBoundsException e) {
- System.err.println("Error: IndexOutOfBoundsException in handlePacket: " + e.getMessage());
- e.printStackTrace();
+ LogWriter.error("Error: IndexOutOfBoundsException in handlePacket: " + e.getMessage());
} catch (Exception e) {
- System.err.println("Error: Exception in handlePacket: " + e.getMessage());
- e.printStackTrace();
+ LogWriter.error("Error: Exception in handlePacket: " + e.getMessage());
}
}
@@ -118,7 +117,7 @@ public final class PacketHandler {
public void sendToPlayer(AbstractPacket packet, EntityPlayerMP player) {
FMLEventChannel eventChannel = getEventChannel(packet);
if (eventChannel == null) {
- System.err.println("Error: Event channel is null for packet: " + packet.getClass().getName());
+ LogWriter.error("Error: Event channel is null for packet: " + packet.getClass().getName());
return;
}
sendPacket(packet, proxyPacket -> eventChannel.sendTo(proxyPacket, player));
@@ -127,7 +126,7 @@ public final class PacketHandler {
public void sendToServer(AbstractPacket packet) {
FMLEventChannel eventChannel = getEventChannel(packet);
if (eventChannel == null) {
- System.err.println("Error: Event channel is null for packet: " + packet.getClass().getName());
+ LogWriter.error("Error: Event channel is null for packet: " + packet.getClass().getName());
return;
}
sendPacket(packet, eventChannel::sendToServer);
@@ -136,7 +135,7 @@ public final class PacketHandler {
public void sendToAll(AbstractPacket packet) {
FMLEventChannel eventChannel = getEventChannel(packet);
if (eventChannel == null) {
- System.err.println("Error: Event channel is null for packet: " + packet.getClass().getName());
+ LogWriter.error("Error: Event channel is null for packet: " + packet.getClass().getName());
return;
}
sendPacket(packet, eventChannel::sendToAll);
@@ -145,7 +144,7 @@ public final class PacketHandler {
public void sendToAllAround(AbstractPacket packet, NetworkRegistry.TargetPoint point) {
FMLEventChannel eventChannel = getEventChannel(packet);
if (eventChannel == null) {
- System.err.println("Error: Event channel is null for packet: " + packet.getClass().getName());
+ LogWriter.error("Error: Event channel is null for packet: " + packet.getClass().getName());
return;
}
sendPacket(packet, proxyPacket -> eventChannel.sendToAllAround(proxyPacket, point));
@@ -154,7 +153,7 @@ public final class PacketHandler {
public void sendToDimension(AbstractPacket packet, int dimensionId) {
FMLEventChannel eventChannel = getEventChannel(packet);
if (eventChannel == null) {
- System.err.println("Error: Event channel is null for packet: " + packet.getClass().getName());
+ LogWriter.error("Error: Event channel is null for packet: " + packet.getClass().getName());
return;
}
sendPacket(packet, proxyPacket -> eventChannel.sendToDimension(proxyPacket, dimensionId));
diff --git a/src/main/java/kamkeel/npcs/network/packets/large/LargeScrollDataPacket.java b/src/main/java/kamkeel/npcs/network/packets/large/LargeScrollDataPacket.java
index 387d6c17c..0fef898a1 100644
--- a/src/main/java/kamkeel/npcs/network/packets/large/LargeScrollDataPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/large/LargeScrollDataPacket.java
@@ -45,18 +45,11 @@ public final class LargeScrollDataPacket extends LargeAbstractPacket {
}
byte[] bytes = new byte[buffer.readableBytes()];
buffer.readBytes(bytes);
- System.out.println("getData: Written data to buffer: " + buffer.toString());
return bytes;
}
@Override
protected void handleCompleteData(ByteBuf data, EntityPlayer player) throws IOException {
- if (data == null || data.readableBytes() <= 0) {
- System.err.println("LargeScrollDataPacket: ByteBuf is empty or already read.");
- return;
- }
- data.readerIndex(0);
- System.out.println("handleCompleteData: Reading data from buffer: " + data.toString());
NoppesUtil.setScrollData(data);
}
}
diff --git a/src/main/java/kamkeel/npcs/network/packets/large/LargeScrollGroupPacket.java b/src/main/java/kamkeel/npcs/network/packets/large/LargeScrollGroupPacket.java
index bd3ef8dd5..2301ab2f9 100644
--- a/src/main/java/kamkeel/npcs/network/packets/large/LargeScrollGroupPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/large/LargeScrollGroupPacket.java
@@ -39,8 +39,8 @@ public final class LargeScrollGroupPacket extends LargeAbstractPacket {
ByteBuf buffer = Unpooled.buffer();
buffer.writeInt(data.size());
for (Map.Entry entry : data.entrySet()) {
- ByteBufUtils.writeString(buffer, entry.getKey());
buffer.writeInt(entry.getValue());
+ ByteBufUtils.writeString(buffer, entry.getKey());
}
byte[] bytes = new byte[buffer.readableBytes()];
buffer.readBytes(bytes);
From de560321187bdc6efef26f39a6cffb7b5e04d5e1 Mon Sep 17 00:00:00 2001
From: Kam
Date: Wed, 29 Jan 2025 18:25:34 -0500
Subject: [PATCH 016/357] Syncing and Large Packet Completion
---
src/main/java/foxz/command/CmdDialog.java | 3 +-
src/main/java/foxz/command/CmdQuest.java | 3 +-
.../kamkeel/npcs/command/DialogCommand.java | 3 +-
.../kamkeel/npcs/command/QuestCommand.java | 3 +-
.../kamkeel/npcs/controllers/SyncMaster.java | 383 ++++++++++++++++++
.../kamkeel/npcs/network/AbstractPacket.java | 17 +-
.../kamkeel/npcs/network/KamUtilServer.java | 4 +-
.../npcs/network/LargeAbstractPacket.java | 54 ++-
.../kamkeel/npcs/network/PacketHandler.java | 71 ++--
.../npcs/network/enums/EnumClientPacket.java | 1 +
.../npcs/network/enums/EnumSyncAction.java | 7 +
.../npcs/network/enums/EnumSyncType.java | 11 +
.../network/packets/client/DBCFormPacket.java | 37 --
.../packets/client/LargeNBTEndPacket.java | 38 --
.../packets/client/LargeNBTPartPacket.java | 39 --
.../large/LargeScrollDataPacket.java | 2 +-
.../large/LargeScrollGroupPacket.java | 2 +-
.../large/LargeScrollListPacket.java | 2 +-
.../client/large/sync/LargeSyncPacket.java | 102 +++++
.../packets/client/sync/SyncAddPacket.java | 41 --
.../packets/client/sync/SyncEndPacket.java | 41 --
.../packets/client/sync/SyncPlayerPacket.java | 38 --
.../packets/client/sync/SyncRemovePacket.java | 39 --
.../packets/client/sync/SyncUpdatePacket.java | 41 --
src/main/java/noppes/npcs/CommonProxy.java | 6 +-
src/main/java/noppes/npcs/CustomNpcs.java | 8 +-
.../java/noppes/npcs/NoppesUtilServer.java | 45 +-
.../noppes/npcs/ScriptPlayerEventHandler.java | 3 +-
.../java/noppes/npcs/ServerTickHandler.java | 3 +-
.../noppes/npcs/blocks/BlockCampfire.java | 2 -
.../java/noppes/npcs/client/NoppesUtil.java | 47 ---
.../npcs/client/PacketHandlerClient.java | 28 --
.../npcs/constants/EnumPacketClient.java | 3 -
.../java/noppes/npcs/constants/SyncType.java | 11 -
.../npcs/controllers/DialogController.java | 15 +-
.../npcs/controllers/FactionController.java | 9 +-
.../npcs/controllers/MagicController.java | 5 +-
.../npcs/controllers/QuestController.java | 11 +-
.../npcs/controllers/SyncController.java | 332 ---------------
39 files changed, 648 insertions(+), 862 deletions(-)
create mode 100644 src/main/java/kamkeel/npcs/controllers/SyncMaster.java
create mode 100644 src/main/java/kamkeel/npcs/network/enums/EnumSyncAction.java
create mode 100644 src/main/java/kamkeel/npcs/network/enums/EnumSyncType.java
delete mode 100644 src/main/java/kamkeel/npcs/network/packets/client/DBCFormPacket.java
delete mode 100644 src/main/java/kamkeel/npcs/network/packets/client/LargeNBTEndPacket.java
delete mode 100644 src/main/java/kamkeel/npcs/network/packets/client/LargeNBTPartPacket.java
rename src/main/java/kamkeel/npcs/network/packets/{ => client}/large/LargeScrollDataPacket.java (96%)
rename src/main/java/kamkeel/npcs/network/packets/{ => client}/large/LargeScrollGroupPacket.java (96%)
rename src/main/java/kamkeel/npcs/network/packets/{ => client}/large/LargeScrollListPacket.java (96%)
create mode 100644 src/main/java/kamkeel/npcs/network/packets/client/large/sync/LargeSyncPacket.java
delete mode 100644 src/main/java/kamkeel/npcs/network/packets/client/sync/SyncAddPacket.java
delete mode 100644 src/main/java/kamkeel/npcs/network/packets/client/sync/SyncEndPacket.java
delete mode 100644 src/main/java/kamkeel/npcs/network/packets/client/sync/SyncPlayerPacket.java
delete mode 100644 src/main/java/kamkeel/npcs/network/packets/client/sync/SyncRemovePacket.java
delete mode 100644 src/main/java/kamkeel/npcs/network/packets/client/sync/SyncUpdatePacket.java
delete mode 100644 src/main/java/noppes/npcs/constants/SyncType.java
diff --git a/src/main/java/foxz/command/CmdDialog.java b/src/main/java/foxz/command/CmdDialog.java
index 250717dd4..6dfa15a4f 100644
--- a/src/main/java/foxz/command/CmdDialog.java
+++ b/src/main/java/foxz/command/CmdDialog.java
@@ -5,6 +5,7 @@ import foxz.commandhelper.annotations.Command;
import foxz.commandhelper.annotations.SubCommand;
import foxz.commandhelper.permissions.OpOnly;
import foxz.commandhelper.permissions.ParamCheck;
+import kamkeel.npcs.controllers.SyncMaster;
import net.minecraft.command.CommandBase;
import net.minecraft.entity.player.EntityPlayer;
import noppes.npcs.NoppesUtilServer;
@@ -89,7 +90,7 @@ public class CmdDialog extends ChMcLogger {
)
public boolean reload(String args[]){
new DialogController().load();
- SyncController.syncAllDialogs();
+ SyncMaster.syncAllDialogs();
return true;
}
diff --git a/src/main/java/foxz/command/CmdQuest.java b/src/main/java/foxz/command/CmdQuest.java
index e0500f3e1..ca5f758ae 100644
--- a/src/main/java/foxz/command/CmdQuest.java
+++ b/src/main/java/foxz/command/CmdQuest.java
@@ -5,6 +5,7 @@ import foxz.commandhelper.annotations.Command;
import foxz.commandhelper.annotations.SubCommand;
import foxz.commandhelper.permissions.OpOnly;
import foxz.commandhelper.permissions.ParamCheck;
+import kamkeel.npcs.controllers.SyncMaster;
import net.minecraft.entity.player.EntityPlayerMP;
import noppes.npcs.Server;
import noppes.npcs.constants.EnumPacketClient;
@@ -170,7 +171,7 @@ public class CmdQuest extends ChMcLogger{
)
public boolean reload(String args[]){
new QuestController().load();
- SyncController.syncAllQuests();
+ SyncMaster.syncAllQuests();
return true;
}
}
diff --git a/src/main/java/kamkeel/npcs/command/DialogCommand.java b/src/main/java/kamkeel/npcs/command/DialogCommand.java
index 4a4e3bc66..c139e9b09 100644
--- a/src/main/java/kamkeel/npcs/command/DialogCommand.java
+++ b/src/main/java/kamkeel/npcs/command/DialogCommand.java
@@ -1,5 +1,6 @@
package kamkeel.npcs.command;
+import kamkeel.npcs.controllers.SyncMaster;
import net.minecraft.command.CommandBase;
import net.minecraft.command.CommandException;
import net.minecraft.command.ICommandSender;
@@ -89,7 +90,7 @@ public class DialogCommand extends CommandKamkeelBase {
)
public void reload(ICommandSender sender, String args[]){
new DialogController().load();
- SyncController.syncAllDialogs();
+ SyncMaster.syncAllDialogs();
sendResult(sender, "Dialogs Reloaded");
}
diff --git a/src/main/java/kamkeel/npcs/command/QuestCommand.java b/src/main/java/kamkeel/npcs/command/QuestCommand.java
index cd89ab044..1a36ee8b7 100644
--- a/src/main/java/kamkeel/npcs/command/QuestCommand.java
+++ b/src/main/java/kamkeel/npcs/command/QuestCommand.java
@@ -1,5 +1,6 @@
package kamkeel.npcs.command;
+import kamkeel.npcs.controllers.SyncMaster;
import net.minecraft.command.CommandException;
import net.minecraft.command.ICommandSender;
import net.minecraft.entity.player.EntityPlayer;
@@ -382,7 +383,7 @@ public class QuestCommand extends CommandKamkeelBase {
)
public void reload(ICommandSender sender, String args[]){
new QuestController().load();
- SyncController.syncAllQuests();
+ SyncMaster.syncAllQuests();
sendResult(sender, "Quests Reloaded");
}
}
diff --git a/src/main/java/kamkeel/npcs/controllers/SyncMaster.java b/src/main/java/kamkeel/npcs/controllers/SyncMaster.java
new file mode 100644
index 000000000..7b9048210
--- /dev/null
+++ b/src/main/java/kamkeel/npcs/controllers/SyncMaster.java
@@ -0,0 +1,383 @@
+package kamkeel.npcs.controllers;
+
+import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
+import kamkeel.npcs.addon.DBCAddon;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.packets.client.large.sync.LargeSyncPacket;
+import kamkeel.npcs.network.enums.EnumSyncAction;
+import kamkeel.npcs.network.enums.EnumSyncType;
+import net.minecraft.entity.player.EntityPlayerMP;
+import net.minecraft.nbt.NBTTagCompound;
+import net.minecraft.nbt.NBTTagList;
+import noppes.npcs.client.ClientCacheHandler;
+import noppes.npcs.controllers.DialogController;
+import noppes.npcs.controllers.FactionController;
+import noppes.npcs.controllers.QuestController;
+import noppes.npcs.controllers.data.*;
+
+import java.util.HashMap;
+
+public class SyncMaster {
+
+ public static void syncPlayer(EntityPlayerMP player){
+ // 1) Factions
+ PacketHandler.Instance.sendToPlayer(new LargeSyncPacket(
+ EnumSyncType.FACTION,
+ EnumSyncAction.RELOAD,
+ -1,
+ factionsNBT()
+ ), player);
+
+ // 2) Dialog Categories
+ PacketHandler.Instance.sendToPlayer(new LargeSyncPacket(
+ EnumSyncType.DIALOG_CATEGORY,
+ EnumSyncAction.RELOAD,
+ -1,
+ dialogCategoriesNBT()
+ ), player);
+
+ // 3) Quest Categories
+ PacketHandler.Instance.sendToPlayer(new LargeSyncPacket(
+ EnumSyncType.QUEST_CATEGORY,
+ EnumSyncAction.RELOAD,
+ -1,
+ questCategoriesNBT()
+ ), player);
+
+ DBCAddon.instance.syncPlayer(player);
+ syncPlayerData(player, false);
+ }
+
+ public static NBTTagCompound factionsNBT(){
+ NBTTagList list = new NBTTagList();
+ NBTTagCompound compound = new NBTTagCompound();
+ for(Faction faction : FactionController.getInstance().factions.values()){
+ NBTTagCompound factioNBT = new NBTTagCompound();
+ faction.writeNBT(factioNBT);
+ list.appendTag(factioNBT);
+ }
+ compound.setTag("Factions", list);
+ return compound;
+ }
+
+ public static NBTTagCompound dialogCategoriesNBT(){
+ NBTTagCompound compound = new NBTTagCompound();
+ NBTTagList categoryList = new NBTTagList();
+ for(DialogCategory category : DialogController.Instance.categories.values()){
+ NBTTagCompound questCompound = new NBTTagCompound();;
+ NBTTagList dialogList = new NBTTagList();
+ for(int dialogID : category.dialogs.keySet()){
+ Dialog quest = category.dialogs.get(dialogID);
+ dialogList.appendTag(quest.writeToNBT(new NBTTagCompound()));
+ }
+ questCompound.setTag("Data", dialogList);
+ questCompound.setTag("CatNBT", category.writeSmallNBT(new NBTTagCompound()));
+ }
+ compound.setTag("DialogCategories", categoryList);
+ return compound;
+ }
+
+ public static void syncPlayerData(EntityPlayerMP player, boolean update){
+ PlayerData data = PlayerData.get(player);
+ if(data != null){
+ if(update){
+ PacketHandler.Instance.sendToPlayer(new LargeSyncPacket(
+ EnumSyncType.PLAYERDATA,
+ EnumSyncAction.UPDATE,
+ -1,
+ data.getSyncNBT())
+ , player);
+ } else {
+ PacketHandler.Instance.sendToPlayer(new LargeSyncPacket(
+ EnumSyncType.PLAYERDATA,
+ EnumSyncAction.RELOAD,
+ -1,
+ data.getSyncNBTFull()), player);
+ }
+ }
+ }
+
+ public static void syncRemove(EnumSyncType enumSyncType, int id){
+ PacketHandler.Instance.sendToAll(new LargeSyncPacket(
+ enumSyncType,
+ EnumSyncAction.REMOVE,
+ id,
+ new NBTTagCompound()
+ ));
+ }
+
+ public static void syncAllDialogs() {
+ PacketHandler.Instance.sendToAll(new LargeSyncPacket(
+ EnumSyncType.DIALOG_CATEGORY,
+ EnumSyncAction.RELOAD,
+ -1,
+ dialogCategoriesNBT()
+ ));
+ }
+
+ public static void syncAllQuests() {
+ PacketHandler.Instance.sendToAll(new LargeSyncPacket(
+ EnumSyncType.QUEST_CATEGORY,
+ EnumSyncAction.RELOAD,
+ -1,
+ questCategoriesNBT()
+ ));
+ }
+
+ public static NBTTagCompound questCategoriesNBT(){
+ NBTTagCompound compound = new NBTTagCompound();
+ NBTTagList categoryList = new NBTTagList();
+ for(QuestCategory category : QuestController.Instance.categories.values()){
+ NBTTagCompound questCompound = new NBTTagCompound();;
+ NBTTagList questList = new NBTTagList();
+ for(int questID : category.quests.keySet()){
+ Quest quest = category.quests.get(questID);
+ questList.appendTag(quest.writeToNBT(new NBTTagCompound()));
+ }
+ questCompound.setTag("Data", questList);
+ questCompound.setTag("CatNBT", category.writeSmallNBT(new NBTTagCompound()));
+ }
+ compound.setTag("QuestCategories", categoryList);
+ return compound;
+ }
+
+ @SideOnly(Side.CLIENT)
+ public static void clientSync(EnumSyncType enumSyncType, NBTTagCompound fullCompound) {
+ switch (enumSyncType){
+ case FACTION: {
+ NBTTagList list = fullCompound.getTagList("Factions", 10);
+ for (int i = 0; i < list.tagCount(); i++) {
+ Faction faction = new Faction();
+ faction.readNBT(list.getCompoundTagAt(i));
+ FactionController.getInstance().factionsSync.put(faction.id, faction);
+ }
+ FactionController.getInstance().factions = FactionController.getInstance().factionsSync;
+ FactionController.getInstance().factionsSync = new HashMap();
+ break;
+ }
+ case DIALOG_CATEGORY: {
+ if(!fullCompound.hasNoTags()){
+ NBTTagList categories = fullCompound.getTagList("DialogCategories", 10);
+ for(int j = 0; j < fullCompound.getTagList("DialogCategories", 10).tagCount(); j++) {
+ NBTTagCompound categoryCompound = categories.getCompoundTagAt(j);
+ if(categoryCompound.hasNoTags())
+ continue;
+
+ DialogCategory category = new DialogCategory();
+ category.readSmallNBT(categoryCompound.getCompoundTag("CatNBT"));
+ NBTTagList dialogList = categoryCompound.getTagList("Data", 10);
+ if(DialogController.Instance.categoriesSync.containsKey(category.id)){
+ category = DialogController.Instance.categoriesSync.get(category.id);
+ category.readSmallNBT(categoryCompound.getCompoundTag("CatNBT"));
+ }
+ for(int i = 0; i < dialogList.tagCount(); i++)
+ {
+ Dialog dialog = new Dialog();
+ dialog.readNBT(dialogList.getCompoundTagAt(i));
+ dialog.category = category;
+ category.dialogs.put(dialog.id, dialog);
+ }
+ DialogController.Instance.categoriesSync.put(category.id, category);
+ }
+ }
+
+ HashMap dialogs = new HashMap();
+ for(DialogCategory category : DialogController.Instance.categoriesSync.values()){
+ for(Dialog dialog : category.dialogs.values()){
+ dialogs.put(dialog.id, dialog);
+ }
+ }
+
+ DialogController.Instance.categories = DialogController.Instance.categoriesSync;
+ DialogController.Instance.dialogs = dialogs;
+ DialogController.Instance.categoriesSync = new HashMap();
+ break;
+ }
+ case QUEST_CATEGORY: {
+ if(!fullCompound.hasNoTags()){
+ NBTTagList categories = fullCompound.getTagList("QuestCategories", 10);
+ for(int j = 0; j < fullCompound.getTagList("QuestCategories", 10).tagCount(); j++) {
+ NBTTagCompound categoryCompound = categories.getCompoundTagAt(j);
+ if(categoryCompound.hasNoTags())
+ continue;
+
+ QuestCategory category = new QuestCategory();
+ category.readSmallNBT(categoryCompound.getCompoundTag("CatNBT"));
+ NBTTagList questList = categoryCompound.getTagList("Data", 10);
+ if(QuestController.Instance.categoriesSync.containsKey(category.id)){
+ category = QuestController.Instance.categoriesSync.get(category.id);
+ category.readSmallNBT(categoryCompound.getCompoundTag("CatNBT"));
+ }
+ for(int i = 0; i < questList.tagCount(); i++)
+ {
+ Quest quest = new Quest();
+ quest.readNBT(questList.getCompoundTagAt(i));
+ quest.category = category;
+ category.quests.put(quest.id, quest);
+ }
+ QuestController.Instance.categoriesSync.put(category.id, category);
+ }
+ }
+
+ HashMap quests = new HashMap();
+ for(QuestCategory category : QuestController.Instance.categoriesSync.values()){
+ for(Quest quest : category.quests.values()){
+ quests.put(quest.id, quest);
+ }
+ }
+
+ QuestController.Instance.categories = QuestController.Instance.categoriesSync;
+ QuestController.Instance.quests = quests;
+ QuestController.Instance.categoriesSync = new HashMap();
+ break;
+ }
+ case PLAYERDATA: {
+ ClientCacheHandler.playerData.setSyncNBTFull(fullCompound);
+ break;
+ }
+ }
+ }
+
+ /**
+ * Update Related Tasks
+ */
+ @SideOnly(Side.CLIENT)
+ public static void clientUpdate(EnumSyncType enumSyncType, int category_id, NBTTagCompound compound) {
+ switch (enumSyncType){
+ case FACTION: {
+ Faction faction = new Faction();
+ faction.readNBT(compound);
+ FactionController.getInstance().factions.put(faction.id, faction);
+ break;
+ }
+ case DIALOG: {
+ DialogCategory category = DialogController.Instance.categories.get(category_id);
+ Dialog dialog = new Dialog();
+ dialog.category = category;
+ dialog.readNBT(compound);
+ DialogController.Instance.dialogs.put(dialog.id, dialog);
+ category.dialogs.put(dialog.id, dialog);
+ break;
+ }
+ case QUEST: {
+ QuestCategory category = QuestController.Instance.categories.get(category_id);
+ Quest quest = new Quest();
+ quest.category = category;
+ quest.readNBT(compound);
+ QuestController.Instance.quests.put(quest.id, quest);
+ category.quests.put(quest.id, quest);
+ break;
+ }
+ case QUEST_CATEGORY: {
+ QuestCategory category = new QuestCategory();
+ category.readSmallNBT(compound.getCompoundTag("CatNBT"));
+ NBTTagList list = compound.getTagList("Data", 10);
+ if(QuestController.Instance.categoriesSync.containsKey(category.id)){
+ category = QuestController.Instance.categoriesSync.get(category.id);
+ category.readSmallNBT(compound.getCompoundTag("CatNBT"));
+ }
+ for(int i = 0; i < list.tagCount(); i++)
+ {
+ Quest quest = new Quest();
+ quest.readNBT(list.getCompoundTagAt(i));
+ quest.category = category;
+ category.quests.put(quest.id, quest);
+ }
+ QuestController.Instance.categories.put(category.id, category);
+ break;
+ }
+ case DIALOG_CATEGORY: {
+ DialogCategory category = new DialogCategory();
+ category.readSmallNBT(compound.getCompoundTag("CatNBT"));
+ NBTTagList list = compound.getTagList("Data", 10);
+ if(DialogController.Instance.categoriesSync.containsKey(category.id)){
+ category = DialogController.Instance.categoriesSync.get(category.id);
+ category.readSmallNBT(compound.getCompoundTag("CatNBT"));
+ }
+ for(int i = 0; i < list.tagCount(); i++)
+ {
+ Dialog dialog = new Dialog();
+ dialog.readNBT(list.getCompoundTagAt(i));
+ dialog.category = category;
+ category.dialogs.put(dialog.id, dialog);
+ }
+ DialogController.Instance.categories.put(category.id, category);
+ break;
+ }
+ case PLAYERDATA: {
+ ClientCacheHandler.playerData.setSyncNBT(compound);
+ break;
+ }
+ }
+ }
+
+ public static void syncUpdate(EnumSyncType type, int cat, NBTTagCompound compound) {
+ PacketHandler.Instance.sendToAll(new LargeSyncPacket(
+ type,
+ EnumSyncAction.UPDATE,
+ cat,
+ compound
+ ));
+ }
+
+
+ public static NBTTagCompound updateQuestCat(QuestCategory questCategory) {
+ NBTTagCompound questCompound = new NBTTagCompound();
+ NBTTagList questList = new NBTTagList();
+ for(int questID : questCategory.quests.keySet()){
+ Quest quest = questCategory.quests.get(questID);
+ questList.appendTag(quest.writeToNBT(new NBTTagCompound()));
+ }
+ questCompound.setTag("Data", questList);
+ questCompound.setTag("CatNBT", questCategory.writeSmallNBT(new NBTTagCompound()));
+ return questCompound;
+ }
+
+ public static NBTTagCompound updateDialogCat(DialogCategory dialogCategory) {
+ NBTTagCompound dialogCompound = new NBTTagCompound();
+ NBTTagList dialogList = new NBTTagList();
+ for(int questID : dialogCategory.dialogs.keySet()){
+ Dialog dialog = dialogCategory.dialogs.get(questID);
+ dialogList.appendTag(dialog.writeToNBT(new NBTTagCompound()));
+ }
+ dialogCompound.setTag("Data", dialogList);
+ dialogCompound.setTag("CatNBT", dialogCategory.writeSmallNBT(new NBTTagCompound()));
+ return dialogCompound;
+ }
+
+ @SideOnly(Side.CLIENT)
+ public static void clientSyncRemove(EnumSyncType enumSyncType, int id) {
+ switch (enumSyncType){
+ case FACTION:
+ FactionController.getInstance().factions.remove(id);
+ break;
+ case DIALOG:
+ Dialog dialog = DialogController.Instance.dialogs.remove(id);
+ if(dialog != null) {
+ dialog.category.dialogs.remove(id);
+ }
+ break;
+ case DIALOG_CATEGORY:
+ DialogCategory dialogCategory = DialogController.Instance.categories.remove(id);
+ if(dialogCategory != null) {
+ DialogController.Instance.dialogs.keySet().removeAll(dialogCategory.dialogs.keySet());
+ }
+ break;
+ case QUEST:
+ Quest quest = QuestController.Instance.quests.remove(id);
+ if(quest != null) {
+ quest.category.quests.remove(id);
+ }
+ break;
+ case QUEST_CATEGORY:
+ QuestCategory questCategory = QuestController.Instance.categories.remove(id);
+ if(questCategory != null) {
+ QuestController.Instance.quests.keySet().removeAll(questCategory.quests.keySet());
+ }
+ break;
+ case MAGIC:
+ break;
+ }
+ }
+}
diff --git a/src/main/java/kamkeel/npcs/network/AbstractPacket.java b/src/main/java/kamkeel/npcs/network/AbstractPacket.java
index 7d373581d..527f50547 100644
--- a/src/main/java/kamkeel/npcs/network/AbstractPacket.java
+++ b/src/main/java/kamkeel/npcs/network/AbstractPacket.java
@@ -6,6 +6,8 @@ import io.netty.buffer.Unpooled;
import net.minecraft.entity.player.EntityPlayer;
import java.io.IOException;
+import java.util.Collections;
+import java.util.List;
public abstract class AbstractPacket {
@@ -16,11 +18,22 @@ public abstract class AbstractPacket {
buf.writeInt(packetChannel.getChannelType().ordinal());
buf.writeInt(getType().ordinal());
sendData(buf);
- return new FMLProxyPacket(buf, getChannel().getChannelName());
- } catch (Exception ignored) {}
+ return new FMLProxyPacket(buf, packetChannel.getChannelName());
+ } catch (Exception e) {
+ // For debugging, you might want to log it
+ e.printStackTrace();
+ }
return null;
}
+ public List generatePackets() {
+ FMLProxyPacket single = generatePacket();
+ if (single == null) {
+ return Collections.emptyList();
+ }
+ return Collections.singletonList(single);
+ }
+
public abstract Enum getType();
public abstract PacketChannel getChannel();
public abstract void sendData(ByteBuf out) throws IOException;
diff --git a/src/main/java/kamkeel/npcs/network/KamUtilServer.java b/src/main/java/kamkeel/npcs/network/KamUtilServer.java
index 4ffb3b7f0..e1cdce6a6 100644
--- a/src/main/java/kamkeel/npcs/network/KamUtilServer.java
+++ b/src/main/java/kamkeel/npcs/network/KamUtilServer.java
@@ -1,7 +1,7 @@
package kamkeel.npcs.network;
-import kamkeel.npcs.network.packets.large.LargeScrollGroupPacket;
-import kamkeel.npcs.network.packets.large.LargeScrollDataPacket;
+import kamkeel.npcs.network.packets.client.large.LargeScrollGroupPacket;
+import kamkeel.npcs.network.packets.client.large.LargeScrollDataPacket;
import net.minecraft.entity.player.EntityPlayerMP;
import java.util.Map;
diff --git a/src/main/java/kamkeel/npcs/network/LargeAbstractPacket.java b/src/main/java/kamkeel/npcs/network/LargeAbstractPacket.java
index 261eb8f4e..d83d3cde3 100644
--- a/src/main/java/kamkeel/npcs/network/LargeAbstractPacket.java
+++ b/src/main/java/kamkeel/npcs/network/LargeAbstractPacket.java
@@ -1,11 +1,14 @@
package kamkeel.npcs.network;
+import cpw.mods.fml.common.network.internal.FMLProxyPacket;
import io.netty.buffer.ByteBuf;
import io.netty.buffer.Unpooled;
import net.minecraft.entity.player.EntityPlayer;
import org.lwjgl.Sys;
import java.io.IOException;
+import java.util.ArrayList;
+import java.util.List;
import java.util.Map;
import java.util.UUID;
import java.util.concurrent.ConcurrentHashMap;
@@ -13,28 +16,47 @@ import java.util.concurrent.ConcurrentHashMap;
public abstract class LargeAbstractPacket extends AbstractPacket {
private static final Map packetChunks = new ConcurrentHashMap<>();
- private static final int CHUNK_SIZE = 5000;
+ private static final int CHUNK_SIZE = 10000;
+ /**
+ * Create multiple FMLProxyPacket objects, each containing up to CHUNK_SIZE bytes.
+ */
@Override
- public void sendData(ByteBuf out) throws IOException {
- byte[] data = getData();
- int totalSize = data.length;
+ public List generatePackets() {
+ List packets = new ArrayList<>();
+ PacketChannel packetChannel = getChannel();
+
+ byte[] fullData;
+ try {
+ fullData = getData();
+ } catch (IOException e) {
+ e.printStackTrace();
+ return packets;
+ }
+
+ int totalSize = fullData.length;
UUID packetId = UUID.randomUUID();
- // Break the data into chunks of CHUNK_SIZE bytes each
+ // Break data into CHUNK_SIZE chunks
for (int offset = 0; offset < totalSize; offset += CHUNK_SIZE) {
int chunkSize = Math.min(CHUNK_SIZE, totalSize - offset);
+ ByteBuf chunkBuf = Unpooled.buffer();
- // Write a header for each chunk
- out.writeLong(packetId.getMostSignificantBits());
- out.writeLong(packetId.getLeastSignificantBits());
- out.writeInt(totalSize);
- out.writeInt(offset);
- out.writeInt((totalSize + CHUNK_SIZE - 1) / CHUNK_SIZE); // totalChunks
+ chunkBuf.writeInt(packetChannel.getChannelType().ordinal());
+ chunkBuf.writeInt(getType().ordinal());
- // Write the chunk bytes
- out.writeBytes(data, offset, chunkSize);
+ chunkBuf.writeLong(packetId.getMostSignificantBits());
+ chunkBuf.writeLong(packetId.getLeastSignificantBits());
+ chunkBuf.writeInt(totalSize);
+ chunkBuf.writeInt(offset);
+ chunkBuf.writeInt((totalSize + CHUNK_SIZE - 1) / CHUNK_SIZE);
+
+ chunkBuf.writeBytes(fullData, offset, chunkSize);
+
+ FMLProxyPacket proxyPacket = new FMLProxyPacket(chunkBuf, packetChannel.getChannelName());
+ packets.add(proxyPacket);
}
+ return packets;
}
@Override
@@ -87,6 +109,12 @@ public abstract class LargeAbstractPacket extends AbstractPacket {
protected abstract void handleCompleteData(ByteBuf data, EntityPlayer player) throws IOException;
+ @Override
+ public final FMLProxyPacket generatePacket() {return null;}
+
+ @Override
+ public void sendData(ByteBuf out) throws IOException {}
+
/**
* Simple storage class to keep track of partial data and how many bytes we've received so far.
*/
diff --git a/src/main/java/kamkeel/npcs/network/PacketHandler.java b/src/main/java/kamkeel/npcs/network/PacketHandler.java
index 33dd11cf7..80fee9beb 100644
--- a/src/main/java/kamkeel/npcs/network/PacketHandler.java
+++ b/src/main/java/kamkeel/npcs/network/PacketHandler.java
@@ -7,9 +7,10 @@ import cpw.mods.fml.common.network.NetworkRegistry;
import cpw.mods.fml.common.network.internal.FMLProxyPacket;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.enums.EnumPacketType;
-import kamkeel.npcs.network.packets.large.LargeScrollDataPacket;
-import kamkeel.npcs.network.packets.large.LargeScrollGroupPacket;
-import kamkeel.npcs.network.packets.large.LargeScrollListPacket;
+import kamkeel.npcs.network.packets.client.large.LargeScrollDataPacket;
+import kamkeel.npcs.network.packets.client.large.LargeScrollGroupPacket;
+import kamkeel.npcs.network.packets.client.large.LargeScrollListPacket;
+import kamkeel.npcs.network.packets.client.large.sync.LargeSyncPacket;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.network.NetHandlerPlayServer;
@@ -17,19 +18,19 @@ import noppes.npcs.CustomNpcs;
import noppes.npcs.LogWriter;
import java.util.*;
-import java.util.function.Consumer;
public final class PacketHandler {
public static PacketHandler Instance;
+ // Channels
public Map channels = new Hashtable<>();
- public final static PacketChannel INFO_PACKET = new PacketChannel("CNPC+|Info", EnumPacketType.INFO);
- public final static PacketChannel DATA_PACKET = new PacketChannel("CNPC+|Data", EnumPacketType.DATA);
- public final static PacketChannel CLIENT_PACKET = new PacketChannel("CNPC+|Client", EnumPacketType.CLIENT);
- public final static PacketChannel LARGE_PACKET = new PacketChannel("CNPC+|Large", EnumPacketType.LARGE);
+ public static final PacketChannel INFO_PACKET = new PacketChannel("CNPC+|Info", EnumPacketType.INFO);
+ public static final PacketChannel DATA_PACKET = new PacketChannel("CNPC+|Data", EnumPacketType.DATA);
+ public static final PacketChannel CLIENT_PACKET = new PacketChannel("CNPC+|Client", EnumPacketType.CLIENT);
+ public static final PacketChannel LARGE_PACKET = new PacketChannel("CNPC+|Large", EnumPacketType.LARGE);
- private final static List packetChannels = new ArrayList<>();
+ private static final List packetChannels = new ArrayList<>();
public PacketHandler() {
// Register Channels
@@ -43,22 +44,20 @@ public final class PacketHandler {
LARGE_PACKET.registerPacket(new LargeScrollGroupPacket());
LARGE_PACKET.registerPacket(new LargeScrollDataPacket());
LARGE_PACKET.registerPacket(new LargeScrollListPacket());
-
- // Log channel registration
- System.out.println("PacketHandler initialized and channels registered.");
+ LARGE_PACKET.registerPacket(new LargeSyncPacket());
}
- public void registerChannels() {
- FMLEventChannel eventChannel;
+ private void registerChannels() {
for (PacketChannel channel : packetChannels) {
- eventChannel = NetworkRegistry.INSTANCE.newEventDrivenChannel(channel.getChannelName());
+ FMLEventChannel eventChannel =
+ NetworkRegistry.INSTANCE.newEventDrivenChannel(channel.getChannelName());
eventChannel.register(this);
channels.put(channel.getChannelType(), eventChannel);
System.out.println("Registered channel: " + channel.getChannelName());
}
}
- public PacketChannel getPacketChannel(EnumPacketType type){
+ public PacketChannel getPacketChannel(EnumPacketType type) {
return packetChannels.stream()
.filter(channel -> channel.getChannelType() == type)
.findFirst()
@@ -86,20 +85,26 @@ public final class PacketHandler {
private void handlePacket(FMLProxyPacket packet, EntityPlayer player) {
ByteBuf buf = packet.payload();
try {
+ // First two ints are channelTypeOrdinal and packetTypeOrdinal
int packetTypeOrdinal = buf.readInt();
EnumPacketType packetType = EnumPacketType.values()[packetTypeOrdinal];
+
PacketChannel packetChannel = getPacketChannel(packetType);
if (packetChannel == null) {
LogWriter.error("Error: Packet channel is null for packet type: " + packetType);
return;
}
+
int packetId = buf.readInt();
AbstractPacket abstractPacket = packetChannel.packets.get(packetId);
if (abstractPacket == null) {
LogWriter.error("Error: Abstract packet is null for packet ID: " + packetId);
return;
}
+
+ // Let the packet parse the rest
abstractPacket.receiveData(buf, player);
+
} catch (IndexOutOfBoundsException e) {
LogWriter.error("Error: IndexOutOfBoundsException in handlePacket: " + e.getMessage());
} catch (Exception e) {
@@ -107,20 +112,31 @@ public final class PacketHandler {
}
}
- public void sendPacket(AbstractPacket packet, Consumer sendFunction) {
- FMLProxyPacket proxyPacket = packet.generatePacket();
- if (proxyPacket != null) {
- sendFunction.accept(proxyPacket);
+ /**
+ * Sends every FMLProxyPacket produced by packet.generatePackets()
+ */
+ private void sendAllPackets(AbstractPacket packet, SendAction action) {
+ // get all generated FMLProxyPacket objects (could be 1 for normal, or many for large)
+ List proxyPackets = packet.generatePackets();
+ if (proxyPackets.isEmpty()) {
+ LogWriter.error("Warning: No packets generated for " + packet.getClass().getName());
+ }
+
+ for (FMLProxyPacket proxy : proxyPackets) {
+ action.send(proxy);
}
}
+ // ------------------------------------------------------------------------
+ // Public API methods for sending
+
public void sendToPlayer(AbstractPacket packet, EntityPlayerMP player) {
FMLEventChannel eventChannel = getEventChannel(packet);
if (eventChannel == null) {
LogWriter.error("Error: Event channel is null for packet: " + packet.getClass().getName());
return;
}
- sendPacket(packet, proxyPacket -> eventChannel.sendTo(proxyPacket, player));
+ sendAllPackets(packet, p -> eventChannel.sendTo(p, player));
}
public void sendToServer(AbstractPacket packet) {
@@ -129,7 +145,7 @@ public final class PacketHandler {
LogWriter.error("Error: Event channel is null for packet: " + packet.getClass().getName());
return;
}
- sendPacket(packet, eventChannel::sendToServer);
+ sendAllPackets(packet, eventChannel::sendToServer);
}
public void sendToAll(AbstractPacket packet) {
@@ -138,7 +154,7 @@ public final class PacketHandler {
LogWriter.error("Error: Event channel is null for packet: " + packet.getClass().getName());
return;
}
- sendPacket(packet, eventChannel::sendToAll);
+ sendAllPackets(packet, eventChannel::sendToAll);
}
public void sendToAllAround(AbstractPacket packet, NetworkRegistry.TargetPoint point) {
@@ -147,7 +163,7 @@ public final class PacketHandler {
LogWriter.error("Error: Event channel is null for packet: " + packet.getClass().getName());
return;
}
- sendPacket(packet, proxyPacket -> eventChannel.sendToAllAround(proxyPacket, point));
+ sendAllPackets(packet, p -> eventChannel.sendToAllAround(p, point));
}
public void sendToDimension(AbstractPacket packet, int dimensionId) {
@@ -156,6 +172,11 @@ public final class PacketHandler {
LogWriter.error("Error: Event channel is null for packet: " + packet.getClass().getName());
return;
}
- sendPacket(packet, proxyPacket -> eventChannel.sendToDimension(proxyPacket, dimensionId));
+ sendAllPackets(packet, p -> eventChannel.sendToDimension(p, dimensionId));
+ }
+
+ // Simple functional interface to unify the "send" action
+ private interface SendAction {
+ void send(FMLProxyPacket proxy);
}
}
diff --git a/src/main/java/kamkeel/npcs/network/enums/EnumClientPacket.java b/src/main/java/kamkeel/npcs/network/enums/EnumClientPacket.java
index 83b08450d..ca253aa43 100644
--- a/src/main/java/kamkeel/npcs/network/enums/EnumClientPacket.java
+++ b/src/main/java/kamkeel/npcs/network/enums/EnumClientPacket.java
@@ -2,6 +2,7 @@ package kamkeel.npcs.network.enums;
// Packets to the Client
public enum EnumClientPacket {
+ SYNC,
CHAT,
MESSAGE,
PARTY_MESSAGE,
diff --git a/src/main/java/kamkeel/npcs/network/enums/EnumSyncAction.java b/src/main/java/kamkeel/npcs/network/enums/EnumSyncAction.java
new file mode 100644
index 000000000..f2260547e
--- /dev/null
+++ b/src/main/java/kamkeel/npcs/network/enums/EnumSyncAction.java
@@ -0,0 +1,7 @@
+package kamkeel.npcs.network.enums;
+
+public enum EnumSyncAction {
+ RELOAD,
+ UPDATE,
+ REMOVE
+}
diff --git a/src/main/java/kamkeel/npcs/network/enums/EnumSyncType.java b/src/main/java/kamkeel/npcs/network/enums/EnumSyncType.java
new file mode 100644
index 000000000..e66957598
--- /dev/null
+++ b/src/main/java/kamkeel/npcs/network/enums/EnumSyncType.java
@@ -0,0 +1,11 @@
+package kamkeel.npcs.network.enums;
+
+public enum EnumSyncType {
+ FACTION,
+ DIALOG,
+ DIALOG_CATEGORY,
+ QUEST,
+ QUEST_CATEGORY,
+ PLAYERDATA,
+ MAGIC
+}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/DBCFormPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/DBCFormPacket.java
deleted file mode 100644
index 2efc85ea0..000000000
--- a/src/main/java/kamkeel/npcs/network/packets/client/DBCFormPacket.java
+++ /dev/null
@@ -1,37 +0,0 @@
-package kamkeel.npcs.network.packets.client;
-
-import io.netty.buffer.ByteBuf;
-import kamkeel.npcs.network.AbstractPacket;
-import kamkeel.npcs.network.PacketChannel;
-import kamkeel.npcs.network.PacketHandler;
-import kamkeel.npcs.network.enums.EnumClientPacket;
-import net.minecraft.entity.player.EntityPlayer;
-import noppes.npcs.client.NoppesUtil;
-
-import java.io.IOException;
-
-public final class DBCFormPacket extends AbstractPacket {
- public static final String packetName = "Client|DBCForm";
-
- public DBCFormPacket() {}
-
- @Override
- public Enum getType() {
- return EnumClientPacket.DBC_FORM;
- }
-
- @Override
- public PacketChannel getChannel() {
- return PacketHandler.CLIENT_PACKET;
- }
-
- @Override
- public void sendData(ByteBuf out) throws IOException {
- // TODO: Send Packet
- }
-
- @Override
- public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- NoppesUtil.handleFormEnd();
- }
-}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/LargeNBTEndPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/LargeNBTEndPacket.java
deleted file mode 100644
index 7da3d4bce..000000000
--- a/src/main/java/kamkeel/npcs/network/packets/client/LargeNBTEndPacket.java
+++ /dev/null
@@ -1,38 +0,0 @@
-package kamkeel.npcs.network.packets.client;
-
-import io.netty.buffer.ByteBuf;
-import kamkeel.npcs.network.AbstractPacket;
-import kamkeel.npcs.network.PacketChannel;
-import kamkeel.npcs.network.PacketHandler;
-import kamkeel.npcs.network.enums.EnumClientPacket;
-import net.minecraft.entity.player.EntityPlayer;
-import noppes.npcs.client.NoppesUtil;
-
-import java.io.IOException;
-
-public final class LargeNBTEndPacket extends AbstractPacket {
- public static final String packetName = "Client|LargeNBTEnd";
-
- public LargeNBTEndPacket() {}
-
- @Override
- public Enum getType() {
- return EnumClientPacket.LARGE_NBT_END;
- }
-
- @Override
- public PacketChannel getChannel() {
- return PacketHandler.CLIENT_PACKET;
- }
-
- @Override
- public void sendData(ByteBuf out) throws IOException {
- // TODO: Send Packet
- }
-
- @Override
- public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- // Finalize handling of large NBT data (if needed).
- NoppesUtil.handleLargeData(null);
- }
-}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/LargeNBTPartPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/LargeNBTPartPacket.java
deleted file mode 100644
index d87db4a40..000000000
--- a/src/main/java/kamkeel/npcs/network/packets/client/LargeNBTPartPacket.java
+++ /dev/null
@@ -1,39 +0,0 @@
-package kamkeel.npcs.network.packets.client;
-
-import io.netty.buffer.ByteBuf;
-import kamkeel.npcs.network.AbstractPacket;
-import kamkeel.npcs.network.PacketChannel;
-import kamkeel.npcs.network.PacketHandler;
-import kamkeel.npcs.network.enums.EnumClientPacket;
-import net.minecraft.entity.player.EntityPlayer;
-import noppes.npcs.client.NoppesUtil;
-
-import java.io.IOException;
-
-public final class LargeNBTPartPacket extends AbstractPacket {
- public static final String packetName = "Client|LargeNBTPart";
-
- public LargeNBTPartPacket() {}
-
- @Override
- public Enum getType() {
- return EnumClientPacket.LARGE_NBT_PART;
- }
-
- @Override
- public PacketChannel getChannel() {
- return PacketHandler.CLIENT_PACKET;
- }
-
- @Override
- public void sendData(ByteBuf out) throws IOException {
- // TODO: Send Packet
- }
-
- @Override
- public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- byte[] chunk = new byte[in.readShort()];
- in.readBytes(chunk);
- NoppesUtil.handleLargeData(chunk);
- }
-}
diff --git a/src/main/java/kamkeel/npcs/network/packets/large/LargeScrollDataPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/large/LargeScrollDataPacket.java
similarity index 96%
rename from src/main/java/kamkeel/npcs/network/packets/large/LargeScrollDataPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/large/LargeScrollDataPacket.java
index 0fef898a1..a1d2b102a 100644
--- a/src/main/java/kamkeel/npcs/network/packets/large/LargeScrollDataPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/large/LargeScrollDataPacket.java
@@ -1,4 +1,4 @@
-package kamkeel.npcs.network.packets.large;
+package kamkeel.npcs.network.packets.client.large;
import io.netty.buffer.ByteBuf;
import io.netty.buffer.Unpooled;
diff --git a/src/main/java/kamkeel/npcs/network/packets/large/LargeScrollGroupPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/large/LargeScrollGroupPacket.java
similarity index 96%
rename from src/main/java/kamkeel/npcs/network/packets/large/LargeScrollGroupPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/large/LargeScrollGroupPacket.java
index 2301ab2f9..9a9c54bab 100644
--- a/src/main/java/kamkeel/npcs/network/packets/large/LargeScrollGroupPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/large/LargeScrollGroupPacket.java
@@ -1,4 +1,4 @@
-package kamkeel.npcs.network.packets.large;
+package kamkeel.npcs.network.packets.client.large;
import io.netty.buffer.ByteBuf;
import io.netty.buffer.Unpooled;
diff --git a/src/main/java/kamkeel/npcs/network/packets/large/LargeScrollListPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/large/LargeScrollListPacket.java
similarity index 96%
rename from src/main/java/kamkeel/npcs/network/packets/large/LargeScrollListPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/large/LargeScrollListPacket.java
index 6c71dc81d..c6706cf04 100644
--- a/src/main/java/kamkeel/npcs/network/packets/large/LargeScrollListPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/large/LargeScrollListPacket.java
@@ -1,4 +1,4 @@
-package kamkeel.npcs.network.packets.large;
+package kamkeel.npcs.network.packets.client.large;
import io.netty.buffer.ByteBuf;
import io.netty.buffer.Unpooled;
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/large/sync/LargeSyncPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/large/sync/LargeSyncPacket.java
new file mode 100644
index 000000000..617188531
--- /dev/null
+++ b/src/main/java/kamkeel/npcs/network/packets/client/large/sync/LargeSyncPacket.java
@@ -0,0 +1,102 @@
+package kamkeel.npcs.network.packets.client.large.sync;
+
+import cpw.mods.fml.relauncher.Side;
+import io.netty.buffer.ByteBuf;
+import io.netty.buffer.Unpooled;
+import kamkeel.npcs.controllers.SyncMaster;
+import kamkeel.npcs.network.LargeAbstractPacket;
+import kamkeel.npcs.network.PacketChannel;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.enums.EnumClientPacket;
+import kamkeel.npcs.network.enums.EnumSyncAction;
+import kamkeel.npcs.network.enums.EnumSyncType;
+import kamkeel.npcs.util.ByteBufUtils;
+import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.nbt.NBTTagCompound;
+import noppes.npcs.CustomNpcs;
+
+import java.io.IOException;
+
+/**
+ * A large sync packet that sends chunked data to the client for a given SyncType
+ * along with a SyncAction (RELOAD, UPDATE, REMOVE).
+ */
+public final class LargeSyncPacket extends LargeAbstractPacket {
+
+ private EnumSyncType enumSyncType;
+ private EnumSyncAction enumSyncAction;
+ private NBTTagCompound syncData;
+ private int operationID;
+
+ public LargeSyncPacket() {}
+
+ /**
+ * Constructs a new LargeSyncPacket.
+ */
+ public LargeSyncPacket(EnumSyncType enumSyncType, EnumSyncAction enumSyncAction, int catId, NBTTagCompound syncData) {
+ this.enumSyncType = enumSyncType;
+ this.enumSyncAction = enumSyncAction;
+ this.syncData = syncData;
+ this.operationID = catId;
+ }
+
+ @Override
+ public Enum getType() {
+ return EnumClientPacket.SYNC;
+ }
+
+ @Override
+ public PacketChannel getChannel() {
+ return PacketHandler.LARGE_PACKET; // Or whichever channel you want.
+ }
+
+ @Override
+ protected byte[] getData() throws IOException {
+ ByteBuf buffer = Unpooled.buffer();
+ // 1) Write SyncType
+ buffer.writeInt(enumSyncType.ordinal());
+ // 2) Write SyncAction
+ buffer.writeInt(enumSyncAction.ordinal());
+ // 3) Optional Category ID
+ buffer.writeInt(operationID);
+ // 4) Write the NBTTagCompound
+ ByteBufUtils.writeNBT(buffer, syncData);
+
+ // Copy the buffer’s readable bytes into a byte[]
+ byte[] bytes = new byte[buffer.readableBytes()];
+ buffer.readBytes(bytes);
+ return bytes;
+ }
+
+ @Override
+ protected void handleCompleteData(ByteBuf data, EntityPlayer player) throws IOException {
+ if(CustomNpcs.side() != Side.CLIENT)
+ return;
+
+ // Reconstruct everything from the ByteBuf
+ int syncTypeOrdinal = data.readInt();
+ int syncActionOrdinal = data.readInt();
+ int categoryID = data.readInt();
+
+ EnumSyncType type = EnumSyncType.values()[syncTypeOrdinal];
+ EnumSyncAction action = EnumSyncAction.values()[syncActionOrdinal];
+ NBTTagCompound tag = ByteBufUtils.readNBT(data);
+
+ // Now do your client-side logic (similar to your old clientSync() or clientSyncUpdate() approach)
+ handleSyncPacketClient(type, action, categoryID, tag);
+ }
+
+ private void handleSyncPacketClient(EnumSyncType enumSyncType, EnumSyncAction enumSyncAction, int id, NBTTagCompound data) {
+ switch (enumSyncAction) {
+ case RELOAD:
+ SyncMaster.clientSync(enumSyncType, data);
+ break;
+ case UPDATE:
+ SyncMaster.clientUpdate(enumSyncType, id, data);
+ break;
+ case REMOVE:
+ SyncMaster.clientSyncRemove(enumSyncType, id);
+ break;
+ }
+ }
+}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncAddPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncAddPacket.java
deleted file mode 100644
index 4318fedd6..000000000
--- a/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncAddPacket.java
+++ /dev/null
@@ -1,41 +0,0 @@
-package kamkeel.npcs.network.packets.client.sync;
-
-import io.netty.buffer.ByteBuf;
-import kamkeel.npcs.network.AbstractPacket;
-import kamkeel.npcs.network.PacketChannel;
-import kamkeel.npcs.network.PacketHandler;
-import kamkeel.npcs.network.enums.EnumClientPacket;
-import net.minecraft.entity.player.EntityPlayer;
-import net.minecraft.nbt.NBTTagCompound;
-import noppes.npcs.Server;
-import noppes.npcs.controllers.SyncController;
-
-import java.io.IOException;
-
-public final class SyncAddPacket extends AbstractPacket {
- public static final String packetName = "Client|SyncAdd";
-
- public SyncAddPacket() {}
-
- @Override
- public Enum getType() {
- return EnumClientPacket.SYNC_ADD;
- }
-
- @Override
- public PacketChannel getChannel() {
- return PacketHandler.CLIENT_PACKET;
- }
-
- @Override
- public void sendData(ByteBuf out) throws IOException {
- // TODO: Send Packet
- }
-
- @Override
- public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- int synctype = in.readInt();
- NBTTagCompound compound = Server.readNBT(in);
- SyncController.clientSync(synctype, compound, false);
- }
-}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncEndPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncEndPacket.java
deleted file mode 100644
index b9cbcb7b0..000000000
--- a/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncEndPacket.java
+++ /dev/null
@@ -1,41 +0,0 @@
-package kamkeel.npcs.network.packets.client.sync;
-
-import io.netty.buffer.ByteBuf;
-import kamkeel.npcs.network.AbstractPacket;
-import kamkeel.npcs.network.PacketChannel;
-import kamkeel.npcs.network.PacketHandler;
-import kamkeel.npcs.network.enums.EnumClientPacket;
-import net.minecraft.entity.player.EntityPlayer;
-import net.minecraft.nbt.NBTTagCompound;
-import noppes.npcs.Server;
-import noppes.npcs.controllers.SyncController;
-
-import java.io.IOException;
-
-public final class SyncEndPacket extends AbstractPacket {
- public static final String packetName = "Client|SyncEnd";
-
- public SyncEndPacket() {}
-
- @Override
- public Enum getType() {
- return EnumClientPacket.SYNC_END;
- }
-
- @Override
- public PacketChannel getChannel() {
- return PacketHandler.CLIENT_PACKET;
- }
-
- @Override
- public void sendData(ByteBuf out) throws IOException {
- // TODO: Send Packet
- }
-
- @Override
- public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- int synctype = in.readInt();
- NBTTagCompound compound = Server.readNBT(in);
- SyncController.clientSync(synctype, compound, true);
- }
-}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncPlayerPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncPlayerPacket.java
deleted file mode 100644
index a595e3622..000000000
--- a/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncPlayerPacket.java
+++ /dev/null
@@ -1,38 +0,0 @@
-package kamkeel.npcs.network.packets.client.sync;
-
-import io.netty.buffer.ByteBuf;
-import kamkeel.npcs.network.AbstractPacket;
-import kamkeel.npcs.network.PacketChannel;
-import kamkeel.npcs.network.PacketHandler;
-import kamkeel.npcs.network.enums.EnumClientPacket;
-import net.minecraft.entity.player.EntityPlayer;
-import noppes.npcs.client.NoppesUtil;
-
-import java.io.IOException;
-
-public final class SyncPlayerPacket extends AbstractPacket {
- public static final String packetName = "Client|SyncPlayer";
-
- public SyncPlayerPacket() {}
-
- @Override
- public Enum getType() {
- return EnumClientPacket.SYNC_PLAYER;
- }
-
- @Override
- public PacketChannel getChannel() {
- return PacketHandler.CLIENT_PACKET;
- }
-
- @Override
- public void sendData(ByteBuf out) throws IOException {
- // TODO: Send Packet
- }
-
- @Override
- public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- boolean sync = in.readBoolean();
- NoppesUtil.handlePlayerDataEnd(sync);
- }
-}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncRemovePacket.java b/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncRemovePacket.java
deleted file mode 100644
index 20708ec7b..000000000
--- a/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncRemovePacket.java
+++ /dev/null
@@ -1,39 +0,0 @@
-package kamkeel.npcs.network.packets.client.sync;
-
-import io.netty.buffer.ByteBuf;
-import kamkeel.npcs.network.AbstractPacket;
-import kamkeel.npcs.network.PacketChannel;
-import kamkeel.npcs.network.PacketHandler;
-import kamkeel.npcs.network.enums.EnumClientPacket;
-import net.minecraft.entity.player.EntityPlayer;
-import noppes.npcs.controllers.SyncController;
-
-import java.io.IOException;
-
-public final class SyncRemovePacket extends AbstractPacket {
- public static final String packetName = "Client|SyncRemove";
-
- public SyncRemovePacket() {}
-
- @Override
- public Enum getType() {
- return EnumClientPacket.SYNC_REMOVE;
- }
-
- @Override
- public PacketChannel getChannel() {
- return PacketHandler.CLIENT_PACKET;
- }
-
- @Override
- public void sendData(ByteBuf out) throws IOException {
- // TODO: Send Packet
- }
-
- @Override
- public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- int synctype = in.readInt();
- int id = in.readInt();
- SyncController.clientSyncRemove(synctype, id);
- }
-}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncUpdatePacket.java b/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncUpdatePacket.java
deleted file mode 100644
index 69ce07ae5..000000000
--- a/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncUpdatePacket.java
+++ /dev/null
@@ -1,41 +0,0 @@
-package kamkeel.npcs.network.packets.client.sync;
-
-import io.netty.buffer.ByteBuf;
-import kamkeel.npcs.network.AbstractPacket;
-import kamkeel.npcs.network.PacketChannel;
-import kamkeel.npcs.network.PacketHandler;
-import kamkeel.npcs.network.enums.EnumClientPacket;
-import net.minecraft.entity.player.EntityPlayer;
-import net.minecraft.nbt.NBTTagCompound;
-import noppes.npcs.Server;
-import noppes.npcs.controllers.SyncController;
-
-import java.io.IOException;
-
-public final class SyncUpdatePacket extends AbstractPacket {
- public static final String packetName = "Client|SyncUpdate";
-
- public SyncUpdatePacket() {}
-
- @Override
- public Enum getType() {
- return EnumClientPacket.SYNC_UPDATE;
- }
-
- @Override
- public PacketChannel getChannel() {
- return PacketHandler.CLIENT_PACKET;
- }
-
- @Override
- public void sendData(ByteBuf out) throws IOException {
- // TODO: Send Packet
- }
-
- @Override
- public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- int synctype = in.readInt();
- NBTTagCompound compound = Server.readNBT(in);
- SyncController.clientSyncUpdate(synctype, compound, in);
- }
-}
diff --git a/src/main/java/noppes/npcs/CommonProxy.java b/src/main/java/noppes/npcs/CommonProxy.java
index a19cb1791..54fadbdbe 100644
--- a/src/main/java/noppes/npcs/CommonProxy.java
+++ b/src/main/java/noppes/npcs/CommonProxy.java
@@ -17,7 +17,7 @@ import noppes.npcs.containers.*;
import noppes.npcs.controllers.data.PlayerData;
import noppes.npcs.entity.EntityNPCInterface;
-public abstract class CommonProxy implements IGuiHandler {
+public class CommonProxy implements IGuiHandler {
public boolean newVersionAvailable = false;
public int revision = 1;
@@ -159,7 +159,9 @@ public abstract class CommonProxy implements IGuiHandler {
}
- public abstract void generateBigSmokeParticles(World world, int x, int y, int z, boolean signalFire);
+ public void generateBigSmokeParticles(World world, int x, int y, int z, boolean signalFire){
+
+ }
public String getAchievementDesc(Achievement achievement) {
return "";
diff --git a/src/main/java/noppes/npcs/CustomNpcs.java b/src/main/java/noppes/npcs/CustomNpcs.java
index 0acc85a7d..873df4c6a 100644
--- a/src/main/java/noppes/npcs/CustomNpcs.java
+++ b/src/main/java/noppes/npcs/CustomNpcs.java
@@ -90,6 +90,8 @@ public class CustomNpcs {
Channel = NetworkRegistry.INSTANCE.newEventDrivenChannel("CustomNPCs");
ChannelPlayer = NetworkRegistry.INSTANCE.newEventDrivenChannel("CustomNPCsPlayer");
+ PacketHandler.Instance = new PacketHandler();
+
MinecraftServer server = MinecraftServer.getServer();
String dir = "";
if (server != null) {
@@ -250,12 +252,6 @@ public class CustomNpcs {
ServerTagMapController.Instance = new ServerTagMapController();
}
- //Loading items in the about to start event was corrupting items with a damage value
- @EventHandler
- public void postInit(FMLPostInitializationEvent event) {
- PacketHandler.Instance = new PacketHandler();
- }
-
@EventHandler
public void stopped(FMLServerStoppedEvent event){
diff --git a/src/main/java/noppes/npcs/NoppesUtilServer.java b/src/main/java/noppes/npcs/NoppesUtilServer.java
index 313b56b61..3273f59ec 100644
--- a/src/main/java/noppes/npcs/NoppesUtilServer.java
+++ b/src/main/java/noppes/npcs/NoppesUtilServer.java
@@ -1,6 +1,7 @@
package noppes.npcs;
import io.netty.buffer.ByteBuf;
+import kamkeel.npcs.controllers.SyncMaster;
import net.minecraft.command.server.CommandBlockLogic;
import net.minecraft.entity.Entity;
import net.minecraft.entity.EntityList;
@@ -572,7 +573,7 @@ public class NoppesUtilServer {
playerdata.save();
}
if(pl != null) {
- SyncController.syncPlayer((EntityPlayerMP) pl);
+ SyncMaster.syncPlayer((EntityPlayerMP) pl);
}
sendPlayerData(type, player, name);
}
@@ -847,48 +848,6 @@ public class NoppesUtilServer {
return entity;
}
}
- public static void sendPlayerDataCompound(EntityPlayerMP player, NBTTagCompound compound, boolean sync) {
- try {
- byte[] bytes = CompressedStreamTools.compress(compound);
-
- // Split byte array into chunks and send each chunk
- int chunkSize = 16000;
- int totalChunks = (int) Math.ceil((double) bytes.length / chunkSize);
- for (int i = 0; i < totalChunks; i++) {
- int start = i * chunkSize;
- int length = Math.min(bytes.length - start, chunkSize);
- byte[] chunk = new byte[length];
- System.arraycopy(bytes, start, chunk, 0, length);
- Server.sendData(player, EnumPacketClient.LARGE_NBT_PART, (Object) chunk);
- }
- // Send end packet
- Server.sendData(player, EnumPacketClient.SYNC_PLAYER, sync);
- } catch (IOException e) {
- e.printStackTrace();
- }
- }
-
- public static void sendDBCCompound(EntityPlayerMP player, NBTTagCompound compound) {
- try {
- byte[] bytes = CompressedStreamTools.compress(compound);
-
- // Split byte array into chunks and send each chunk
- int chunkSize = 16000;
- int totalChunks = (int) Math.ceil((double) bytes.length / chunkSize);
- for (int i = 0; i < totalChunks; i++) {
- int start = i * chunkSize;
- int length = Math.min(bytes.length - start, chunkSize);
- byte[] chunk = new byte[length];
- System.arraycopy(bytes, start, chunk, 0, length);
- Server.sendData(player, EnumPacketClient.LARGE_NBT_PART, (Object) chunk);
- }
- // Send end packet
- Server.sendData(player, EnumPacketClient.DBC_FORM);
- } catch (IOException e) {
- e.printStackTrace();
- }
- }
-
public static boolean isOp(EntityPlayer player) {
return MinecraftServer.getServer().getConfigurationManager().func_152596_g(player.getGameProfile());
diff --git a/src/main/java/noppes/npcs/ScriptPlayerEventHandler.java b/src/main/java/noppes/npcs/ScriptPlayerEventHandler.java
index 211edc791..2ad69fc27 100644
--- a/src/main/java/noppes/npcs/ScriptPlayerEventHandler.java
+++ b/src/main/java/noppes/npcs/ScriptPlayerEventHandler.java
@@ -5,6 +5,7 @@ import cpw.mods.fml.common.eventhandler.SubscribeEvent;
import cpw.mods.fml.common.gameevent.PlayerEvent;
import cpw.mods.fml.common.gameevent.TickEvent;
import cpw.mods.fml.relauncher.Side;
+import kamkeel.npcs.controllers.SyncMaster;
import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.EntityPlayerMP;
@@ -62,7 +63,7 @@ public class ScriptPlayerEventHandler {
PlayerData playerData = PlayerDataController.Instance.getPlayerData(player);
if(playerData.updateClient) {
- NoppesUtilServer.sendPlayerDataCompound((EntityPlayerMP)player, playerData.getSyncNBT(), true);
+ SyncMaster.syncPlayerData((EntityPlayerMP)player, true);
playerData.updateClient = false;
}
diff --git a/src/main/java/noppes/npcs/ServerTickHandler.java b/src/main/java/noppes/npcs/ServerTickHandler.java
index 4a7584060..0532401e6 100644
--- a/src/main/java/noppes/npcs/ServerTickHandler.java
+++ b/src/main/java/noppes/npcs/ServerTickHandler.java
@@ -5,6 +5,7 @@ import cpw.mods.fml.common.gameevent.PlayerEvent;
import cpw.mods.fml.common.gameevent.TickEvent;
import cpw.mods.fml.common.gameevent.TickEvent.Phase;
import kamkeel.npcs.controllers.ProfileController;
+import kamkeel.npcs.controllers.SyncMaster;
import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.server.MinecraftServer;
import net.minecraft.world.WorldServer;
@@ -52,7 +53,7 @@ public class ServerTickHandler {
playerData.onLogin();
}
- SyncController.syncPlayer(player);
+ SyncMaster.syncPlayer(player);
ProfileController.login(player);
}
diff --git a/src/main/java/noppes/npcs/blocks/BlockCampfire.java b/src/main/java/noppes/npcs/blocks/BlockCampfire.java
index 1c3cd08db..b995bf1f2 100644
--- a/src/main/java/noppes/npcs/blocks/BlockCampfire.java
+++ b/src/main/java/noppes/npcs/blocks/BlockCampfire.java
@@ -19,8 +19,6 @@ import org.lwjgl.opengl.GL11;
import java.util.Random;
-import static noppes.npcs.client.ClientProxy.RAND;
-
public class BlockCampfire extends BlockLightable{
public BlockCampfire(boolean lit) {
diff --git a/src/main/java/noppes/npcs/client/NoppesUtil.java b/src/main/java/noppes/npcs/client/NoppesUtil.java
index 2d7a11fb4..f4e3ab5ba 100644
--- a/src/main/java/noppes/npcs/client/NoppesUtil.java
+++ b/src/main/java/noppes/npcs/client/NoppesUtil.java
@@ -329,51 +329,4 @@ public class NoppesUtil {
public static void isGUIOpen(boolean isGUIOpen) {
Client.sendData(EnumPacketServer.IsGuiOpen, isGUIOpen);
}
-
-
- private static byte[] accumulatedData = new byte[0];
- public static void handleLargeData(byte[] chunk) {
- // Append the chunk to the accumulated data
- accumulatedData = concatByteArrays(accumulatedData, chunk);
- }
-
- public static void handlePlayerDataEnd(boolean sync) {
- NBTTagCompound compound;
- try {
- compound = CompressedStreamTools.func_152457_a(accumulatedData, new NBTSizeTracker(2097152L));
- if(sync){
- ClientCacheHandler.playerData.setSyncNBT(compound);
- }
- else {
- ClientCacheHandler.playerData.setSyncNBTFull(compound);
- }
- } catch (IOException e) {
- e.printStackTrace();
- return;
- } finally {
- // Reset the accumulated data after processing
- accumulatedData = new byte[0];
- }
- }
-
- public static void handleFormEnd() {
- NBTTagCompound compound;
- try {
- compound = CompressedStreamTools.func_152457_a(accumulatedData, new NBTSizeTracker(2097152L));
- ClientCacheHandler.playerData.setDBCSync(compound);
- } catch (IOException e) {
- e.printStackTrace();
- return;
- } finally {
- accumulatedData = new byte[0];
- }
- }
-
- // Utility method to concatenate two byte arrays
- private static byte[] concatByteArrays(byte[] a, byte[] b) {
- byte[] result = new byte[a.length + b.length];
- System.arraycopy(a, 0, result, 0, a.length);
- System.arraycopy(b, 0, result, a.length, b.length);
- return result;
- }
}
diff --git a/src/main/java/noppes/npcs/client/PacketHandlerClient.java b/src/main/java/noppes/npcs/client/PacketHandlerClient.java
index b64066ff1..f4b9f5c41 100644
--- a/src/main/java/noppes/npcs/client/PacketHandlerClient.java
+++ b/src/main/java/noppes/npcs/client/PacketHandlerClient.java
@@ -111,31 +111,6 @@ public class PacketHandlerClient extends PacketHandlerServer{
RecipeController.Instance.anvilRecipes = RecipeController.syncRecipes;
RecipeController.syncRecipes = new HashMap();
}
- else if(type == EnumPacketClient.LARGE_NBT_PART){
- byte[] chunk = new byte[buffer.readShort()];
- buffer.readBytes(chunk);
- NoppesUtil.handleLargeData(chunk);
- }
- else if(type == EnumPacketClient.SYNC_PLAYER){
- boolean sync = buffer.readBoolean();
- NoppesUtil.handlePlayerDataEnd(sync);
- }
- else if(type == EnumPacketClient.SYNC_ADD || type == EnumPacketClient.SYNC_END){
- int synctype = buffer.readInt();
- NBTTagCompound compound = Server.readNBT(buffer);
- SyncController.clientSync(synctype, compound, type == EnumPacketClient.SYNC_END);
- }
- else if(type == EnumPacketClient.SYNC_UPDATE){
- int synctype = buffer.readInt();
- NBTTagCompound compound = Server.readNBT(buffer);
- SyncController.clientSyncUpdate(synctype, compound, buffer);
- }
- else if(type == EnumPacketClient.SYNC_REMOVE){
- int synctype = buffer.readInt();
- int id = buffer.readInt();
-
- SyncController.clientSyncRemove(synctype, id);
- }
else if(type == EnumPacketClient.SYNC_CONFIG){
NBTTagCompound configNBT = Server.readNBT(buffer);
SyncController.receiveConfigs(configNBT);
@@ -450,8 +425,5 @@ public class PacketHandlerClient extends PacketHandlerServer{
if(gui instanceof IPartyData)
((IPartyData)gui).setPartyData(Server.readNBT(buffer));
}
- else if(type == EnumPacketClient.DBC_FORM){
- NoppesUtil.handleFormEnd();
- }
}
}
diff --git a/src/main/java/noppes/npcs/constants/EnumPacketClient.java b/src/main/java/noppes/npcs/constants/EnumPacketClient.java
index dc6ff6880..3ce788527 100644
--- a/src/main/java/noppes/npcs/constants/EnumPacketClient.java
+++ b/src/main/java/noppes/npcs/constants/EnumPacketClient.java
@@ -55,9 +55,6 @@ public enum EnumPacketClient {
STOP_SOUNDS,
SYNC_WEAPON,
MARK_DATA,
- SYNC_ADD, SYNC_END, SYNC_UPDATE, SYNC_REMOVE, SYNC_PLAYER,
SYNC_CONFIG,
- DBC_FORM,
- LARGE_NBT_PART, LARGE_NBT_END,
PARTY_DATA
}
diff --git a/src/main/java/noppes/npcs/constants/SyncType.java b/src/main/java/noppes/npcs/constants/SyncType.java
deleted file mode 100644
index d3e76ae93..000000000
--- a/src/main/java/noppes/npcs/constants/SyncType.java
+++ /dev/null
@@ -1,11 +0,0 @@
-package noppes.npcs.constants;
-
-public class SyncType {
- public static final int FACTION = 1;
- public static final int QUEST = 2;
- public static final int QUEST_CATEGORY = 3;
- public static final int DIALOG = 4;
- public static final int DIALOG_CATEGORY = 5;
- public static final int PLAYER_DATA = 6;
- public static final int MAGIC = 7;
-}
diff --git a/src/main/java/noppes/npcs/controllers/DialogController.java b/src/main/java/noppes/npcs/controllers/DialogController.java
index b25f88c91..1a19dd8b5 100644
--- a/src/main/java/noppes/npcs/controllers/DialogController.java
+++ b/src/main/java/noppes/npcs/controllers/DialogController.java
@@ -1,18 +1,17 @@
package noppes.npcs.controllers;
+import kamkeel.npcs.controllers.SyncMaster;
+import kamkeel.npcs.network.enums.EnumSyncType;
import net.minecraft.nbt.CompressedStreamTools;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.nbt.NBTTagList;
import noppes.npcs.CustomNpcs;
import noppes.npcs.LogWriter;
import noppes.npcs.NoppesStringUtils;
-import noppes.npcs.Server;
import noppes.npcs.api.handler.IDialogHandler;
import noppes.npcs.api.handler.data.IDialog;
import noppes.npcs.api.handler.data.IDialogCategory;
import noppes.npcs.constants.EnumOptionType;
-import noppes.npcs.constants.EnumPacketClient;
-import noppes.npcs.constants.SyncType;
import noppes.npcs.controllers.data.Dialog;
import noppes.npcs.controllers.data.DialogCategory;
import noppes.npcs.controllers.data.DialogOption;
@@ -230,7 +229,7 @@ public class DialogController implements IDialogHandler {
dir.mkdirs();
}
categories.put(category.id, category);
- SyncController.updateDialogCat(category);
+ SyncMaster.syncUpdate(EnumSyncType.DIALOG_CATEGORY, -1, SyncMaster.updateDialogCat(category));
}
public void removeCategory(int category){
@@ -243,8 +242,8 @@ public class DialogController implements IDialogHandler {
for(int dia : cat.dialogs.keySet())
dialogs.remove(dia);
categories.remove(category);
- Server.sendToAll(EnumPacketClient.SYNC_REMOVE, SyncType.DIALOG_CATEGORY, category);
- }
+ SyncMaster.syncRemove(EnumSyncType.DIALOG_CATEGORY, category);
+ }
private boolean containsCategoryName(String name) {
name = name.toLowerCase();
@@ -291,7 +290,7 @@ public class DialogController implements IDialogHandler {
if(file2.exists())
file2.delete();
file.renameTo(file2);
- Server.sendToAll(EnumPacketClient.SYNC_UPDATE, SyncType.DIALOG, dialog.writeToNBT(new NBTTagCompound()), category.id);
+ SyncMaster.syncUpdate(EnumSyncType.DIALOG, category.id, dialog.writeToNBT(new NBTTagCompound()));
} catch (Exception e) {
LogWriter.except(e);
}
@@ -305,7 +304,7 @@ public class DialogController implements IDialogHandler {
return;
category.dialogs.remove(dialog.id);
dialogs.remove(dialog.id);
- Server.sendToAll(EnumPacketClient.SYNC_REMOVE, SyncType.DIALOG, dialog.id);
+ SyncMaster.syncRemove(EnumSyncType.DIALOG, dialog.id);
}
private File getDir(){
diff --git a/src/main/java/noppes/npcs/controllers/FactionController.java b/src/main/java/noppes/npcs/controllers/FactionController.java
index 7536cdb97..d9419131c 100644
--- a/src/main/java/noppes/npcs/controllers/FactionController.java
+++ b/src/main/java/noppes/npcs/controllers/FactionController.java
@@ -1,15 +1,14 @@
package noppes.npcs.controllers;
+import kamkeel.npcs.controllers.SyncMaster;
+import kamkeel.npcs.network.enums.EnumSyncType;
import net.minecraft.nbt.CompressedStreamTools;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.nbt.NBTTagList;
import noppes.npcs.CustomNpcs;
import noppes.npcs.LogWriter;
-import noppes.npcs.Server;
import noppes.npcs.api.handler.IFactionHandler;
import noppes.npcs.api.handler.data.IFaction;
-import noppes.npcs.constants.EnumPacketClient;
-import noppes.npcs.constants.SyncType;
import noppes.npcs.controllers.data.Faction;
import java.io.*;
@@ -158,7 +157,7 @@ public class FactionController implements IFactionHandler {
NBTTagCompound facCompound = new NBTTagCompound();
faction.writeNBT(facCompound);
- Server.sendToAll(EnumPacketClient.SYNC_UPDATE, SyncType.FACTION, facCompound);
+ SyncMaster.syncUpdate(EnumSyncType.FACTION, -1, facCompound);
saveFactions();
}
@@ -193,7 +192,7 @@ public class FactionController implements IFactionHandler {
} else {
this.saveFactions();
faction.id = -1;
- Server.sendToAll(EnumPacketClient.SYNC_REMOVE, SyncType.FACTION, id);
+ SyncMaster.syncRemove(EnumSyncType.FACTION, id);
return faction;
}
} else {
diff --git a/src/main/java/noppes/npcs/controllers/MagicController.java b/src/main/java/noppes/npcs/controllers/MagicController.java
index 30b2bed89..a14f01384 100644
--- a/src/main/java/noppes/npcs/controllers/MagicController.java
+++ b/src/main/java/noppes/npcs/controllers/MagicController.java
@@ -5,10 +5,7 @@ import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.nbt.NBTTagList;
import noppes.npcs.CustomNpcs;
import noppes.npcs.LogWriter;
-import noppes.npcs.Server;
import noppes.npcs.api.handler.data.IMagic;
-import noppes.npcs.constants.EnumPacketClient;
-import noppes.npcs.constants.SyncType;
import noppes.npcs.controllers.data.Magic;
import java.io.*;
@@ -160,7 +157,7 @@ public class MagicController {
NBTTagCompound facCompound = new NBTTagCompound();
mag.writeNBT(facCompound);
- Server.sendToAll(EnumPacketClient.SYNC_UPDATE, SyncType.MAGIC, facCompound);
+ // Server.sendToAll(EnumPacketClient.SYNC_UPDATE, SyncType.MAGIC, facCompound);
saveFactions();
}
diff --git a/src/main/java/noppes/npcs/controllers/QuestController.java b/src/main/java/noppes/npcs/controllers/QuestController.java
index e8ec57f7d..3b1c2c30e 100644
--- a/src/main/java/noppes/npcs/controllers/QuestController.java
+++ b/src/main/java/noppes/npcs/controllers/QuestController.java
@@ -1,17 +1,16 @@
package noppes.npcs.controllers;
+import kamkeel.npcs.controllers.SyncMaster;
+import kamkeel.npcs.network.enums.EnumSyncType;
import net.minecraft.nbt.CompressedStreamTools;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.nbt.NBTTagList;
import noppes.npcs.CustomNpcs;
import noppes.npcs.LogWriter;
import noppes.npcs.NoppesStringUtils;
-import noppes.npcs.Server;
import noppes.npcs.api.handler.IQuestHandler;
import noppes.npcs.api.handler.data.IQuest;
import noppes.npcs.api.handler.data.IQuestCategory;
-import noppes.npcs.constants.EnumPacketClient;
-import noppes.npcs.constants.SyncType;
import noppes.npcs.controllers.data.Quest;
import noppes.npcs.controllers.data.QuestCategory;
import noppes.npcs.util.NBTJsonUtil;
@@ -146,7 +145,7 @@ public class QuestController implements IQuestHandler {
for(int dia : cat.quests.keySet())
quests.remove(dia);
categories.remove(category);
- Server.sendToAll(EnumPacketClient.SYNC_REMOVE, SyncType.QUEST_CATEGORY, category);
+ SyncMaster.syncRemove(EnumSyncType.QUEST_CATEGORY, category);
}
public void saveCategory(QuestCategory category){
@@ -177,7 +176,7 @@ public class QuestController implements IQuestHandler {
dir.mkdirs();
}
categories.put(category.id, category);
- SyncController.updateQuestCat(category);
+ SyncMaster.syncUpdate(EnumSyncType.QUEST_CATEGORY, -1, SyncMaster.updateQuestCat(category));
}
private boolean containsCategoryName(String name) {
name = name.toLowerCase();
@@ -225,7 +224,7 @@ public class QuestController implements IQuestHandler {
if(file2.exists())
file2.delete();
file.renameTo(file2);
- Server.sendToAll(EnumPacketClient.SYNC_UPDATE, SyncType.QUEST, quest.writeToNBT(new NBTTagCompound()), category.id);
+ SyncMaster.syncUpdate(EnumSyncType.QUEST, category.id, quest.writeToNBT(new NBTTagCompound()));
} catch (Exception e) {
e.printStackTrace();
}
diff --git a/src/main/java/noppes/npcs/controllers/SyncController.java b/src/main/java/noppes/npcs/controllers/SyncController.java
index 48c0891b5..d66792574 100644
--- a/src/main/java/noppes/npcs/controllers/SyncController.java
+++ b/src/main/java/noppes/npcs/controllers/SyncController.java
@@ -9,10 +9,6 @@ import noppes.npcs.NoppesUtilServer;
import noppes.npcs.Server;
import noppes.npcs.config.ConfigMain;
import noppes.npcs.constants.EnumPacketClient;
-import noppes.npcs.constants.SyncType;
-import noppes.npcs.controllers.data.*;
-
-import java.util.HashMap;
public class SyncController {
@@ -26,332 +22,4 @@ public class SyncController {
ConfigMain.EnableProfiles = compound.getBoolean("Profiles");
}
- public static void syncPlayer(EntityPlayerMP player){
- NBTTagList list = new NBTTagList();
- NBTTagCompound compound = new NBTTagCompound();
-
- ////////////////////////////////////////////////////////////////////////////////
- // Faction Sync
- for(Faction faction : FactionController.getInstance().factions.values()){
- NBTTagCompound factioNBT = new NBTTagCompound();
- faction.writeNBT(factioNBT);
- list.appendTag(factioNBT);
- if(list.tagCount() > 10){
- compound = new NBTTagCompound();
- compound.setTag("Data", list);
- Server.sendData(player, EnumPacketClient.SYNC_ADD, SyncType.FACTION, compound);
- list = new NBTTagList();
- }
- }
- compound = new NBTTagCompound();
- compound.setTag("Data", list);
- Server.sendData(player, EnumPacketClient.SYNC_END, SyncType.FACTION, compound);
- ////////////////////////////////////////////////////////////////////////////////
-
- ////////////////////////////////////////////////////////////////////////////////
- // Quest Sync
- for(QuestCategory category : QuestController.Instance.categories.values()){
- NBTTagCompound questCompound;
- NBTTagList questList = new NBTTagList();
- for(int questID : category.quests.keySet()){
- Quest quest = category.quests.get(questID);
- questList.appendTag(quest.writeToNBT(new NBTTagCompound()));
- if(questList.tagCount() > 20){
- questCompound = new NBTTagCompound();
- questCompound.setTag("Data", questList);
- questCompound.setTag("CatNBT", category.writeSmallNBT(new NBTTagCompound()));
- Server.sendData(player, EnumPacketClient.SYNC_ADD, SyncType.QUEST_CATEGORY, questCompound);
- questList = new NBTTagList();
- }
- }
- questCompound = new NBTTagCompound();
- questCompound.setTag("Data", questList);
- questCompound.setTag("CatNBT", category.writeSmallNBT(new NBTTagCompound()));
- Server.sendData(player, EnumPacketClient.SYNC_ADD, SyncType.QUEST_CATEGORY, questCompound);
- }
- Server.sendData(player, EnumPacketClient.SYNC_END, SyncType.QUEST_CATEGORY, new NBTTagCompound());
- ////////////////////////////////////////////////////////////////////////////////
-
- ////////////////////////////////////////////////////////////////////////////////
- // Dialog Sync
- for(DialogCategory category : DialogController.Instance.categories.values()){
- NBTTagCompound dialogCompound;
- NBTTagList dialogList = new NBTTagList();
- for(int dialogID : category.dialogs.keySet()){
- Dialog dialog = category.dialogs.get(dialogID);
- dialogList.appendTag(dialog.writeToNBT(new NBTTagCompound()));
- if(dialogList.tagCount() > 20){
- dialogCompound = new NBTTagCompound();
- dialogCompound.setTag("Data", dialogList);
- dialogCompound.setTag("CatNBT", category.writeSmallNBT(new NBTTagCompound()));
- Server.sendData(player, EnumPacketClient.SYNC_ADD, SyncType.DIALOG_CATEGORY, dialogCompound);
- dialogList = new NBTTagList();
- }
- }
- dialogCompound = new NBTTagCompound();
- dialogCompound.setTag("Data", dialogList);
- dialogCompound.setTag("CatNBT", category.writeSmallNBT(new NBTTagCompound()));
- Server.sendData(player, EnumPacketClient.SYNC_ADD, SyncType.DIALOG_CATEGORY, dialogCompound);
- }
- Server.sendData(player, EnumPacketClient.SYNC_END, SyncType.DIALOG_CATEGORY, new NBTTagCompound());
- ////////////////////////////////////////////////////////////////////////////////
-
- DBCAddon.instance.syncPlayer(player);
-
- PlayerData data = PlayerData.get(player);
- if(data != null){
- NoppesUtilServer.sendPlayerDataCompound(player, data.getSyncNBTFull(), false);
- }
- }
-
- public static void syncAllDialogs() {
- for(DialogCategory category : DialogController.Instance.categories.values()){
- NBTTagCompound dialogCompound;
- NBTTagList dialogList = new NBTTagList();
- for(int dialogID : category.dialogs.keySet()){
- Dialog dialog = category.dialogs.get(dialogID);
- dialogList.appendTag(dialog.writeToNBT(new NBTTagCompound()));
- if(dialogList.tagCount() > 20){
- dialogCompound = new NBTTagCompound();
- dialogCompound.setTag("Data", dialogList);
- dialogCompound.setTag("CatNBT", category.writeSmallNBT(new NBTTagCompound()));
- Server.sendToAll(EnumPacketClient.SYNC_ADD, SyncType.DIALOG_CATEGORY, dialogCompound);
- dialogList = new NBTTagList();
- }
- }
- dialogCompound = new NBTTagCompound();
- dialogCompound.setTag("Data", dialogList);
- dialogCompound.setTag("CatNBT", category.writeSmallNBT(new NBTTagCompound()));
- Server.sendToAll(EnumPacketClient.SYNC_ADD, SyncType.DIALOG_CATEGORY, dialogCompound);
- }
- Server.sendToAll(EnumPacketClient.SYNC_END, SyncType.DIALOG_CATEGORY, new NBTTagCompound());
- }
-
- public static void syncAllQuests() {
- for(QuestCategory category : QuestController.Instance.categories.values()){
- NBTTagCompound questCompound;
- NBTTagList questList = new NBTTagList();
- for(int questID : category.quests.keySet()){
- Quest quest = category.quests.get(questID);
- questList.appendTag(quest.writeToNBT(new NBTTagCompound()));
- if(questList.tagCount() > 20){
- questCompound = new NBTTagCompound();
- questCompound.setTag("Data", questList);
- questCompound.setTag("CatNBT", category.writeSmallNBT(new NBTTagCompound()));
- Server.sendToAll(EnumPacketClient.SYNC_ADD, SyncType.QUEST_CATEGORY, questCompound);
- questList = new NBTTagList();
- }
- }
- questCompound = new NBTTagCompound();
- questCompound.setTag("Data", questList);
- questCompound.setTag("CatNBT", category.writeSmallNBT(new NBTTagCompound()));
- Server.sendToAll(EnumPacketClient.SYNC_ADD, SyncType.QUEST_CATEGORY, questCompound);
- }
- Server.sendToAll(EnumPacketClient.SYNC_END, SyncType.QUEST_CATEGORY, new NBTTagCompound());
- }
-
- public static void updateQuestCat(QuestCategory questCategory) {
- NBTTagCompound questCompound;
- NBTTagList questList = new NBTTagList();
- for(int questID : questCategory.quests.keySet()){
- Quest quest = questCategory.quests.get(questID);
- questList.appendTag(quest.writeToNBT(new NBTTagCompound()));
- if(questList.tagCount() > 20){
- questCompound = new NBTTagCompound();
- questCompound.setTag("Data", questList);
- questCompound.setTag("CatNBT", questCategory.writeSmallNBT(new NBTTagCompound()));
- Server.sendToAll(EnumPacketClient.SYNC_UPDATE, SyncType.QUEST_CATEGORY, questCompound);
- questList = new NBTTagList();
- }
- }
- questCompound = new NBTTagCompound();
- questCompound.setTag("Data", questList);
- questCompound.setTag("CatNBT", questCategory.writeSmallNBT(new NBTTagCompound()));
- Server.sendToAll(EnumPacketClient.SYNC_UPDATE, SyncType.QUEST_CATEGORY, questCompound);
- }
-
- public static void updateDialogCat(DialogCategory dialogCategory) {
- NBTTagCompound dialogCompound;
- NBTTagList dialogList = new NBTTagList();
- for(int questID : dialogCategory.dialogs.keySet()){
- Dialog dialog = dialogCategory.dialogs.get(questID);
- dialogList.appendTag(dialog.writeToNBT(new NBTTagCompound()));
- if(dialogList.tagCount() > 20){
- dialogCompound = new NBTTagCompound();
- dialogCompound.setTag("Data", dialogList);
- dialogCompound.setTag("CatNBT", dialogCategory.writeSmallNBT(new NBTTagCompound()));
- Server.sendToAll(EnumPacketClient.SYNC_UPDATE, SyncType.DIALOG_CATEGORY, dialogCompound);
- dialogList = new NBTTagList();
- }
- }
- dialogCompound = new NBTTagCompound();
- dialogCompound.setTag("Data", dialogList);
- dialogCompound.setTag("CatNBT", dialogCategory.writeSmallNBT(new NBTTagCompound()));
- Server.sendToAll(EnumPacketClient.SYNC_UPDATE, SyncType.DIALOG_CATEGORY, dialogCompound);
- }
-
- public static void clientSync(int synctype, NBTTagCompound compound, boolean syncEnd) {
- if(synctype == SyncType.FACTION){
- NBTTagList list = compound.getTagList("Data", 10);
- for(int i = 0; i < list.tagCount(); i++)
- {
- Faction faction = new Faction();
- faction.readNBT(list.getCompoundTagAt(i));
- FactionController.getInstance().factionsSync.put(faction.id, faction);
- }
- if(syncEnd){
- FactionController.getInstance().factions = FactionController.getInstance().factionsSync;
- FactionController.getInstance().factionsSync = new HashMap();
- }
- }
- else if(synctype == SyncType.QUEST_CATEGORY){
- if(!compound.hasNoTags()){
- QuestCategory category = new QuestCategory();
- category.readSmallNBT(compound.getCompoundTag("CatNBT"));
- NBTTagList list = compound.getTagList("Data", 10);
- if(QuestController.Instance.categoriesSync.containsKey(category.id)){
- category = QuestController.Instance.categoriesSync.get(category.id);
- category.readSmallNBT(compound.getCompoundTag("CatNBT"));
- }
- for(int i = 0; i < list.tagCount(); i++)
- {
- Quest quest = new Quest();
- quest.readNBT(list.getCompoundTagAt(i));
- quest.category = category;
- category.quests.put(quest.id, quest);
- }
- QuestController.Instance.categoriesSync.put(category.id, category);
- }
- if(syncEnd){
- HashMap quests = new HashMap();
- for(QuestCategory category : QuestController.Instance.categoriesSync.values()){
- for(Quest quest : category.quests.values()){
- quests.put(quest.id, quest);
- }
- }
- QuestController.Instance.categories = QuestController.Instance.categoriesSync;
- QuestController.Instance.quests = quests;
- QuestController.Instance.categoriesSync = new HashMap();
- }
- }
- else if(synctype == SyncType.DIALOG_CATEGORY){
- if(!compound.hasNoTags()){
- DialogCategory category = new DialogCategory();
- category.readSmallNBT(compound.getCompoundTag("CatNBT"));
- NBTTagList list = compound.getTagList("Data", 10);
- if(DialogController.Instance.categoriesSync.containsKey(category.id)){
- category = DialogController.Instance.categoriesSync.get(category.id);
- category.readSmallNBT(compound.getCompoundTag("CatNBT"));
- }
- for(int i = 0; i < list.tagCount(); i++)
- {
- Dialog dialog = new Dialog();
- dialog.readNBT(list.getCompoundTagAt(i));
- dialog.category = category;
- category.dialogs.put(dialog.id, dialog);
- }
- DialogController.Instance.categoriesSync.put(category.id, category);
- }
- if(syncEnd){
- HashMap dialogs = new HashMap();
- for(DialogCategory category : DialogController.Instance.categoriesSync.values()){
- for(Dialog dialog : category.dialogs.values()){
- dialogs.put(dialog.id, dialog);
- }
- }
- DialogController.Instance.categories = DialogController.Instance.categoriesSync;
- DialogController.Instance.dialogs = dialogs;
- DialogController.Instance.categoriesSync = new HashMap();
- }
- }
- }
-
- public static void clientSyncUpdate(int synctype, NBTTagCompound compound, ByteBuf buffer) {
- if(synctype == SyncType.FACTION){
- Faction faction = new Faction();
- faction.readNBT(compound);
- FactionController.getInstance().factions.put(faction.id, faction);
- }
- else if(synctype == SyncType.DIALOG){
- DialogCategory category = DialogController.Instance.categories.get(buffer.readInt());
- Dialog dialog = new Dialog();
- dialog.category = category;
- dialog.readNBT(compound);
- DialogController.Instance.dialogs.put(dialog.id, dialog);
- category.dialogs.put(dialog.id, dialog);
- }
- else if(synctype == SyncType.DIALOG_CATEGORY){
- DialogCategory category = new DialogCategory();
- category.readSmallNBT(compound.getCompoundTag("CatNBT"));
- NBTTagList list = compound.getTagList("Data", 10);
- if(DialogController.Instance.categoriesSync.containsKey(category.id)){
- category = DialogController.Instance.categoriesSync.get(category.id);
- category.readSmallNBT(compound.getCompoundTag("CatNBT"));
- }
- for(int i = 0; i < list.tagCount(); i++)
- {
- Dialog dialog = new Dialog();
- dialog.readNBT(list.getCompoundTagAt(i));
- dialog.category = category;
- category.dialogs.put(dialog.id, dialog);
- }
- DialogController.Instance.categories.put(category.id, category);
- }
- else if(synctype == SyncType.QUEST){
- QuestCategory category = QuestController.Instance.categories.get(buffer.readInt());
- Quest quest = new Quest();
- quest.category = category;
- quest.readNBT(compound);
- QuestController.Instance.quests.put(quest.id, quest);
- category.quests.put(quest.id, quest);
- }
- else if(synctype == SyncType.QUEST_CATEGORY){
- QuestCategory category = new QuestCategory();
- category.readSmallNBT(compound.getCompoundTag("CatNBT"));
- NBTTagList list = compound.getTagList("Data", 10);
- if(QuestController.Instance.categoriesSync.containsKey(category.id)){
- category = QuestController.Instance.categoriesSync.get(category.id);
- category.readSmallNBT(compound.getCompoundTag("CatNBT"));
- }
- for(int i = 0; i < list.tagCount(); i++)
- {
- Quest quest = new Quest();
- quest.readNBT(list.getCompoundTagAt(i));
- quest.category = category;
- category.quests.put(quest.id, quest);
- }
- QuestController.Instance.categories.put(category.id, category);
- }
- }
-
- public static void clientSyncRemove(int synctype, int id) {
- if(synctype == SyncType.FACTION){
- FactionController.getInstance().factions.remove(id);
- }
- else if(synctype == SyncType.DIALOG){
- Dialog dialog = DialogController.Instance.dialogs.remove(id);
- if(dialog != null) {
- dialog.category.dialogs.remove(id);
- }
- }
- else if(synctype == SyncType.DIALOG_CATEGORY){
- DialogCategory category = DialogController.Instance.categories.remove(id);
- if(category != null) {
- DialogController.Instance.dialogs.keySet().removeAll(category.dialogs.keySet());
- }
- }
- else if(synctype == SyncType.QUEST){
- Quest quest = QuestController.Instance.quests.remove(id);
- if(quest != null) {
- quest.category.quests.remove(id);
- }
- }
- else if(synctype == SyncType.QUEST_CATEGORY){
- QuestCategory category = QuestController.Instance.categories.remove(id);
- if(category != null) {
- QuestController.Instance.quests.keySet().removeAll(category.quests.keySet());
- }
- }
- }
-
}
From 06275fffa62d80ec7c335af0e0ade335b3d226d8 Mon Sep 17 00:00:00 2001
From: Kam
Date: Wed, 29 Jan 2025 19:43:45 -0500
Subject: [PATCH 017/357] All 10MB of NBT Size to function
---
.../kamkeel/npcs/controllers/SyncMaster.java | 38 ++++++++++---------
.../kamkeel/npcs/network/PacketHandler.java | 2 +
.../client/large/sync/LargeSyncPacket.java | 7 +++-
.../java/kamkeel/npcs/util/ByteBufUtils.java | 15 ++++++++
4 files changed, 42 insertions(+), 20 deletions(-)
diff --git a/src/main/java/kamkeel/npcs/controllers/SyncMaster.java b/src/main/java/kamkeel/npcs/controllers/SyncMaster.java
index 7b9048210..3b166459e 100644
--- a/src/main/java/kamkeel/npcs/controllers/SyncMaster.java
+++ b/src/main/java/kamkeel/npcs/controllers/SyncMaster.java
@@ -65,7 +65,7 @@ public class SyncMaster {
NBTTagCompound compound = new NBTTagCompound();
NBTTagList categoryList = new NBTTagList();
for(DialogCategory category : DialogController.Instance.categories.values()){
- NBTTagCompound questCompound = new NBTTagCompound();;
+ NBTTagCompound questCompound = new NBTTagCompound();
NBTTagList dialogList = new NBTTagList();
for(int dialogID : category.dialogs.keySet()){
Dialog quest = category.dialogs.get(dialogID);
@@ -73,11 +73,30 @@ public class SyncMaster {
}
questCompound.setTag("Data", dialogList);
questCompound.setTag("CatNBT", category.writeSmallNBT(new NBTTagCompound()));
+ categoryList.appendTag(questCompound);
}
compound.setTag("DialogCategories", categoryList);
return compound;
}
+ public static NBTTagCompound questCategoriesNBT(){
+ NBTTagCompound compound = new NBTTagCompound();
+ NBTTagList categoryList = new NBTTagList();
+ for(QuestCategory category : QuestController.Instance.categories.values()){
+ NBTTagCompound questCompound = new NBTTagCompound();;
+ NBTTagList questList = new NBTTagList();
+ for(int questID : category.quests.keySet()){
+ Quest quest = category.quests.get(questID);
+ questList.appendTag(quest.writeToNBT(new NBTTagCompound()));
+ }
+ questCompound.setTag("Data", questList);
+ questCompound.setTag("CatNBT", category.writeSmallNBT(new NBTTagCompound()));
+ categoryList.appendTag(questCompound);
+ }
+ compound.setTag("QuestCategories", categoryList);
+ return compound;
+ }
+
public static void syncPlayerData(EntityPlayerMP player, boolean update){
PlayerData data = PlayerData.get(player);
if(data != null){
@@ -125,23 +144,6 @@ public class SyncMaster {
));
}
- public static NBTTagCompound questCategoriesNBT(){
- NBTTagCompound compound = new NBTTagCompound();
- NBTTagList categoryList = new NBTTagList();
- for(QuestCategory category : QuestController.Instance.categories.values()){
- NBTTagCompound questCompound = new NBTTagCompound();;
- NBTTagList questList = new NBTTagList();
- for(int questID : category.quests.keySet()){
- Quest quest = category.quests.get(questID);
- questList.appendTag(quest.writeToNBT(new NBTTagCompound()));
- }
- questCompound.setTag("Data", questList);
- questCompound.setTag("CatNBT", category.writeSmallNBT(new NBTTagCompound()));
- }
- compound.setTag("QuestCategories", categoryList);
- return compound;
- }
-
@SideOnly(Side.CLIENT)
public static void clientSync(EnumSyncType enumSyncType, NBTTagCompound fullCompound) {
switch (enumSyncType){
diff --git a/src/main/java/kamkeel/npcs/network/PacketHandler.java b/src/main/java/kamkeel/npcs/network/PacketHandler.java
index 80fee9beb..6ef7210e2 100644
--- a/src/main/java/kamkeel/npcs/network/PacketHandler.java
+++ b/src/main/java/kamkeel/npcs/network/PacketHandler.java
@@ -107,8 +107,10 @@ public final class PacketHandler {
} catch (IndexOutOfBoundsException e) {
LogWriter.error("Error: IndexOutOfBoundsException in handlePacket: " + e.getMessage());
+ e.printStackTrace();
} catch (Exception e) {
LogWriter.error("Error: Exception in handlePacket: " + e.getMessage());
+ e.printStackTrace();
}
}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/large/sync/LargeSyncPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/large/sync/LargeSyncPacket.java
index 617188531..250fdfca2 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/large/sync/LargeSyncPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/large/sync/LargeSyncPacket.java
@@ -12,9 +12,12 @@ import kamkeel.npcs.network.enums.EnumSyncAction;
import kamkeel.npcs.network.enums.EnumSyncType;
import kamkeel.npcs.util.ByteBufUtils;
import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.nbt.CompressedStreamTools;
import net.minecraft.nbt.NBTTagCompound;
import noppes.npcs.CustomNpcs;
+import java.io.ByteArrayOutputStream;
+import java.io.DataOutputStream;
import java.io.IOException;
/**
@@ -60,7 +63,7 @@ public final class LargeSyncPacket extends LargeAbstractPacket {
// 3) Optional Category ID
buffer.writeInt(operationID);
// 4) Write the NBTTagCompound
- ByteBufUtils.writeNBT(buffer, syncData);
+ ByteBufUtils.writeBigNBT(buffer, syncData);
// Copy the buffer’s readable bytes into a byte[]
byte[] bytes = new byte[buffer.readableBytes()];
@@ -80,7 +83,7 @@ public final class LargeSyncPacket extends LargeAbstractPacket {
EnumSyncType type = EnumSyncType.values()[syncTypeOrdinal];
EnumSyncAction action = EnumSyncAction.values()[syncActionOrdinal];
- NBTTagCompound tag = ByteBufUtils.readNBT(data);
+ NBTTagCompound tag = ByteBufUtils.readBigNBT(data);
// Now do your client-side logic (similar to your old clientSync() or clientSyncUpdate() approach)
handleSyncPacketClient(type, action, categoryID, tag);
diff --git a/src/main/java/kamkeel/npcs/util/ByteBufUtils.java b/src/main/java/kamkeel/npcs/util/ByteBufUtils.java
index 0c7bfa779..06b512228 100644
--- a/src/main/java/kamkeel/npcs/util/ByteBufUtils.java
+++ b/src/main/java/kamkeel/npcs/util/ByteBufUtils.java
@@ -9,6 +9,8 @@ import net.minecraft.network.PacketBuffer;
import net.minecraft.village.MerchantRecipeList;
import noppes.npcs.LogWriter;
+import java.io.ByteArrayOutputStream;
+import java.io.DataOutputStream;
import java.io.IOException;
import java.util.Arrays;
import java.util.List;
@@ -100,6 +102,19 @@ public class ByteBufUtils extends cpw.mods.fml.common.network.ByteBufUtils {
return CompressedStreamTools.func_152457_a(bytes, new NBTSizeTracker(2097152L));
}
+ public static void writeBigNBT(ByteBuf buffer, NBTTagCompound compound) throws IOException {
+ byte[] bytes = CompressedStreamTools.compress(compound);
+ buffer.writeInt(bytes.length);
+ buffer.writeBytes(bytes);
+ }
+
+ public static NBTTagCompound readBigNBT(ByteBuf buffer) throws IOException {
+ int length = buffer.readInt();
+ byte[] bytes = new byte[length];
+ buffer.readBytes(bytes);
+ return CompressedStreamTools.func_152457_a(bytes, new NBTSizeTracker(10485760L));
+ }
+
public static void writeString(ByteBuf buffer, String s){
byte[] bytes = s.getBytes(Charsets.UTF_8);
buffer.writeShort((short)bytes.length);
From d91d4668d6cd524c57c2ff7d91d0718ef70dcb85 Mon Sep 17 00:00:00 2001
From: Kam
Date: Wed, 29 Jan 2025 21:50:55 -0500
Subject: [PATCH 018/357] WHEN WILL THIS END!
---
src/main/java/foxz/command/CmdQuest.java | 8 +-
.../npcs/command/QuestCategoryCommand.java | 11 +-
.../kamkeel/npcs/command/QuestCommand.java | 12 +-
.../kamkeel/npcs/network/KamUtilServer.java | 20 ---
.../kamkeel/npcs/network/PacketHandler.java | 33 +++--
.../java/kamkeel/npcs/network/PacketUtil.java | 39 ++++++
.../npcs/network/enums/EnumClientPacket.java | 5 +-
.../packets/client/AchievementPacket.java | 71 ++++++++++
.../{ChatPacket.java => ChatAlertPacket.java} | 21 ++-
.../packets/client/ChatBubblePacket.java | 20 ++-
.../packets/client/DialogDummyPacket.java | 41 ------
.../network/packets/client/DialogPacket.java | 37 +++++-
.../network/packets/client/EditNpcPacket.java | 7 +-
.../network/packets/client/MessagePacket.java | 53 --------
.../network/packets/client/RolePacket.java | 11 +-
.../java/kamkeel/npcs/util/ByteBufUtils.java | 14 +-
.../java/noppes/npcs/NoppesUtilServer.java | 121 ++++++++----------
.../java/noppes/npcs/PacketHandlerServer.java | 16 +--
.../npcs/client/PacketHandlerClient.java | 51 +-------
.../npcs/constants/EnumPacketClient.java | 9 --
.../npcs/controllers/PartyController.java | 25 ++--
.../controllers/PlayerQuestController.java | 15 +--
.../npcs/controllers/data/PlayerData.java | 8 +-
.../controllers/data/PlayerQuestData.java | 5 +-
.../npcs/entity/EntityNPCInterface.java | 5 +-
.../npcs/scripted/entity/ScriptPlayer.java | 7 +-
26 files changed, 322 insertions(+), 343 deletions(-)
delete mode 100644 src/main/java/kamkeel/npcs/network/KamUtilServer.java
create mode 100644 src/main/java/kamkeel/npcs/network/PacketUtil.java
create mode 100644 src/main/java/kamkeel/npcs/network/packets/client/AchievementPacket.java
rename src/main/java/kamkeel/npcs/network/packets/client/{ChatPacket.java => ChatAlertPacket.java} (69%)
delete mode 100644 src/main/java/kamkeel/npcs/network/packets/client/DialogDummyPacket.java
delete mode 100644 src/main/java/kamkeel/npcs/network/packets/client/MessagePacket.java
diff --git a/src/main/java/foxz/command/CmdQuest.java b/src/main/java/foxz/command/CmdQuest.java
index ca5f758ae..332b55e79 100644
--- a/src/main/java/foxz/command/CmdQuest.java
+++ b/src/main/java/foxz/command/CmdQuest.java
@@ -6,11 +6,9 @@ import foxz.commandhelper.annotations.SubCommand;
import foxz.commandhelper.permissions.OpOnly;
import foxz.commandhelper.permissions.ParamCheck;
import kamkeel.npcs.controllers.SyncMaster;
+import kamkeel.npcs.network.PacketUtil;
import net.minecraft.entity.player.EntityPlayerMP;
-import noppes.npcs.Server;
-import noppes.npcs.constants.EnumPacketClient;
import noppes.npcs.controllers.QuestController;
-import noppes.npcs.controllers.SyncController;
import noppes.npcs.controllers.data.PlayerData;
import noppes.npcs.controllers.data.Quest;
import noppes.npcs.controllers.data.QuestData;
@@ -59,8 +57,8 @@ public class CmdQuest extends ChMcLogger{
playerdata.questData.activeQuests.put(questid, questdata);
playerdata.save();
if(playerdata.player != null){
- Server.sendData((EntityPlayerMP)playerdata.player, EnumPacketClient.MESSAGE, "quest.newquest", quest.title);
- Server.sendData((EntityPlayerMP)playerdata.player, EnumPacketClient.CHAT, "quest.newquest", ": ", quest.title);
+ PacketUtil.sendAchievement((EntityPlayerMP) playerdata.player, false, "quest.newquest", quest.title);
+ PacketUtil.sendChatAlert((EntityPlayerMP) playerdata.player, "quest.newquest", ": ", quest.title);
}
playerdata.updateClient = true;
}
diff --git a/src/main/java/kamkeel/npcs/command/QuestCategoryCommand.java b/src/main/java/kamkeel/npcs/command/QuestCategoryCommand.java
index b3bbaae6f..b47b14e78 100644
--- a/src/main/java/kamkeel/npcs/command/QuestCategoryCommand.java
+++ b/src/main/java/kamkeel/npcs/command/QuestCategoryCommand.java
@@ -1,10 +1,9 @@
package kamkeel.npcs.command;
+import kamkeel.npcs.network.PacketUtil;
import net.minecraft.command.CommandException;
import net.minecraft.command.ICommandSender;
import net.minecraft.entity.player.EntityPlayerMP;
-import noppes.npcs.Server;
-import noppes.npcs.constants.EnumPacketClient;
import noppes.npcs.constants.EnumQuestRepeat;
import noppes.npcs.controllers.PlayerDataController;
import noppes.npcs.controllers.QuestController;
@@ -93,8 +92,8 @@ public class QuestCategoryCommand extends CommandKamkeelBase {
playerdata.questData.finishedQuests.put(quest.id, sender.getEntityWorld().getTotalWorldTime());
if(playerdata.player != null){
- Server.sendData((EntityPlayerMP)playerdata.player, EnumPacketClient.MESSAGE, "quest.completed", quest.title);
- Server.sendData((EntityPlayerMP)playerdata.player, EnumPacketClient.CHAT, "quest.completed", ": ", quest.title);
+ PacketUtil.sendAchievement((EntityPlayerMP) playerdata.player, false, "quest.completed", quest.title);
+ PacketUtil.sendChatAlert((EntityPlayerMP) playerdata.player, "quest.completed", ": ", quest.title);
}
count++;
}
@@ -185,8 +184,8 @@ public class QuestCategoryCommand extends CommandKamkeelBase {
count++;
if(playerdata.player != null && questData.sendAlerts){
- Server.sendData((EntityPlayerMP)playerdata.player, EnumPacketClient.MESSAGE, "quest.newquest", quest.title);
- Server.sendData((EntityPlayerMP)playerdata.player, EnumPacketClient.CHAT, "quest.newquest", ": ", quest.title);
+ PacketUtil.sendAchievement((EntityPlayerMP) playerdata.player, false, "quest.newquest", quest.title);
+ PacketUtil.sendChatAlert((EntityPlayerMP) playerdata.player, "quest.newquest", ": ", quest.title);
}
}
}
diff --git a/src/main/java/kamkeel/npcs/command/QuestCommand.java b/src/main/java/kamkeel/npcs/command/QuestCommand.java
index 1a36ee8b7..4dc1a334e 100644
--- a/src/main/java/kamkeel/npcs/command/QuestCommand.java
+++ b/src/main/java/kamkeel/npcs/command/QuestCommand.java
@@ -1,18 +1,16 @@
package kamkeel.npcs.command;
import kamkeel.npcs.controllers.SyncMaster;
+import kamkeel.npcs.network.PacketUtil;
import net.minecraft.command.CommandException;
import net.minecraft.command.ICommandSender;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.EntityPlayerMP;
-import noppes.npcs.Server;
import noppes.npcs.api.handler.data.IQuestObjective;
-import noppes.npcs.constants.EnumPacketClient;
import noppes.npcs.constants.EnumQuestCompletion;
import noppes.npcs.constants.EnumQuestRepeat;
import noppes.npcs.controllers.PlayerDataController;
import noppes.npcs.controllers.QuestController;
-import noppes.npcs.controllers.SyncController;
import noppes.npcs.controllers.data.Party;
import noppes.npcs.controllers.data.PlayerData;
import noppes.npcs.controllers.data.Quest;
@@ -66,8 +64,8 @@ public class QuestCommand extends CommandKamkeelBase {
playerdata.questData.activeQuests.put(questid, questdata);
playerdata.save();
if(playerdata.player != null && questdata.sendAlerts){
- Server.sendData((EntityPlayerMP)playerdata.player, EnumPacketClient.MESSAGE, "quest.newquest", quest.title);
- Server.sendData((EntityPlayerMP)playerdata.player, EnumPacketClient.CHAT, "quest.newquest", ": ", quest.title);
+ PacketUtil.sendAchievement((EntityPlayerMP) playerdata.player, false, "quest.newquest", quest.title);
+ PacketUtil.sendChatAlert((EntityPlayerMP) playerdata.player, "quest.newquest", ": ", quest.title);
}
playerdata.updateClient = true;
sendResult(sender, String.format("Started Quest \u00A7e%d\u00A77 for Player '\u00A7b%s\u00A77'", questid, playerdata.playername));
@@ -112,8 +110,8 @@ public class QuestCommand extends CommandKamkeelBase {
playerdata.save();
if(playerdata.player != null){
- Server.sendData((EntityPlayerMP)playerdata.player, EnumPacketClient.MESSAGE, "quest.completed", quest.title);
- Server.sendData((EntityPlayerMP)playerdata.player, EnumPacketClient.CHAT, "quest.completed", ": ", quest.title);
+ PacketUtil.sendAchievement((EntityPlayerMP) playerdata.player, false, "quest.completed", quest.title);
+ PacketUtil.sendChatAlert((EntityPlayerMP) playerdata.player, "quest.completed", ": ", quest.title);
}
playerdata.updateClient = true;
sendResult(sender, String.format("Finished Quest \u00A7e%d\u00A77 for Player '\u00A7b%s\u00A77'", questid, playerdata.playername));
diff --git a/src/main/java/kamkeel/npcs/network/KamUtilServer.java b/src/main/java/kamkeel/npcs/network/KamUtilServer.java
deleted file mode 100644
index e1cdce6a6..000000000
--- a/src/main/java/kamkeel/npcs/network/KamUtilServer.java
+++ /dev/null
@@ -1,20 +0,0 @@
-package kamkeel.npcs.network;
-
-import kamkeel.npcs.network.packets.client.large.LargeScrollGroupPacket;
-import kamkeel.npcs.network.packets.client.large.LargeScrollDataPacket;
-import net.minecraft.entity.player.EntityPlayerMP;
-
-import java.util.Map;
-
-public class KamUtilServer {
-
- public static void sendScrollData(EntityPlayerMP player, Map map) {
- LargeScrollDataPacket packet = new LargeScrollDataPacket(map);
- PacketHandler.Instance.sendToPlayer(packet, player);
- }
-
- public static void sendScrollGroup(EntityPlayerMP player, Map map){
- LargeScrollGroupPacket packet = new LargeScrollGroupPacket(map);
- PacketHandler.Instance.sendToPlayer(packet, player);
- }
-}
diff --git a/src/main/java/kamkeel/npcs/network/PacketHandler.java b/src/main/java/kamkeel/npcs/network/PacketHandler.java
index 6ef7210e2..184a64329 100644
--- a/src/main/java/kamkeel/npcs/network/PacketHandler.java
+++ b/src/main/java/kamkeel/npcs/network/PacketHandler.java
@@ -6,17 +6,24 @@ import cpw.mods.fml.common.network.FMLNetworkEvent;
import cpw.mods.fml.common.network.NetworkRegistry;
import cpw.mods.fml.common.network.internal.FMLProxyPacket;
import io.netty.buffer.ByteBuf;
+import io.netty.buffer.Unpooled;
import kamkeel.npcs.network.enums.EnumPacketType;
+import kamkeel.npcs.network.packets.client.AchievementPacket;
+import kamkeel.npcs.network.packets.client.ChatAlertPacket;
+import kamkeel.npcs.network.packets.client.ChatBubblePacket;
import kamkeel.npcs.network.packets.client.large.LargeScrollDataPacket;
import kamkeel.npcs.network.packets.client.large.LargeScrollGroupPacket;
import kamkeel.npcs.network.packets.client.large.LargeScrollListPacket;
import kamkeel.npcs.network.packets.client.large.sync.LargeSyncPacket;
+import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.network.NetHandlerPlayServer;
import noppes.npcs.CustomNpcs;
import noppes.npcs.LogWriter;
+import noppes.npcs.constants.EnumPacketClient;
+import java.io.IOException;
import java.util.*;
public final class PacketHandler {
@@ -45,6 +52,11 @@ public final class PacketHandler {
LARGE_PACKET.registerPacket(new LargeScrollDataPacket());
LARGE_PACKET.registerPacket(new LargeScrollListPacket());
LARGE_PACKET.registerPacket(new LargeSyncPacket());
+
+ // Client Packets
+ CLIENT_PACKET.registerPacket(new ChatBubblePacket());
+ CLIENT_PACKET.registerPacket(new ChatAlertPacket());
+ CLIENT_PACKET.registerPacket(new AchievementPacket());
}
private void registerChannels() {
@@ -159,16 +171,7 @@ public final class PacketHandler {
sendAllPackets(packet, eventChannel::sendToAll);
}
- public void sendToAllAround(AbstractPacket packet, NetworkRegistry.TargetPoint point) {
- FMLEventChannel eventChannel = getEventChannel(packet);
- if (eventChannel == null) {
- LogWriter.error("Error: Event channel is null for packet: " + packet.getClass().getName());
- return;
- }
- sendAllPackets(packet, p -> eventChannel.sendToAllAround(p, point));
- }
-
- public void sendToDimension(AbstractPacket packet, int dimensionId) {
+ public void sendToDimension(AbstractPacket packet, final int dimensionId) {
FMLEventChannel eventChannel = getEventChannel(packet);
if (eventChannel == null) {
LogWriter.error("Error: Event channel is null for packet: " + packet.getClass().getName());
@@ -177,6 +180,16 @@ public final class PacketHandler {
sendAllPackets(packet, p -> eventChannel.sendToDimension(p, dimensionId));
}
+ public void sendTracking(AbstractPacket packet, final Entity entity) {
+ FMLEventChannel eventChannel = getEventChannel(packet);
+ if (eventChannel == null) {
+ LogWriter.error("Error: Event channel is null for packet: " + packet.getClass().getName());
+ return;
+ }
+ final NetworkRegistry.TargetPoint point = new NetworkRegistry.TargetPoint(entity.dimension, entity.posX, entity.posY, entity.posZ, 60);
+ sendAllPackets(packet, p -> eventChannel.sendToAllAround(p, point));
+ }
+
// Simple functional interface to unify the "send" action
private interface SendAction {
void send(FMLProxyPacket proxy);
diff --git a/src/main/java/kamkeel/npcs/network/PacketUtil.java b/src/main/java/kamkeel/npcs/network/PacketUtil.java
new file mode 100644
index 000000000..1d677aeb4
--- /dev/null
+++ b/src/main/java/kamkeel/npcs/network/PacketUtil.java
@@ -0,0 +1,39 @@
+package kamkeel.npcs.network;
+
+import kamkeel.npcs.network.packets.client.ChatAlertPacket;
+import kamkeel.npcs.network.packets.client.AchievementPacket;
+import kamkeel.npcs.network.packets.client.large.LargeScrollGroupPacket;
+import kamkeel.npcs.network.packets.client.large.LargeScrollDataPacket;
+import kamkeel.npcs.network.packets.client.large.LargeScrollListPacket;
+import net.minecraft.entity.player.EntityPlayerMP;
+
+import java.util.List;
+import java.util.Map;
+
+public class PacketUtil {
+
+ public static void sendScrollData(EntityPlayerMP player, Map map) {
+ LargeScrollDataPacket packet = new LargeScrollDataPacket(map);
+ PacketHandler.Instance.sendToPlayer(packet, player);
+ }
+
+ public static void sendScrollGroup(EntityPlayerMP player, Map map){
+ LargeScrollGroupPacket packet = new LargeScrollGroupPacket(map);
+ PacketHandler.Instance.sendToPlayer(packet, player);
+ }
+
+ public static void sendList(EntityPlayerMP player, List list){
+ LargeScrollListPacket packet = new LargeScrollListPacket(list);
+ PacketHandler.Instance.sendToPlayer(packet, player);
+ }
+
+ public static void sendChatAlert(EntityPlayerMP playerMP, final Object... obs){
+ ChatAlertPacket packet = new ChatAlertPacket(obs);
+ PacketHandler.Instance.sendToPlayer(packet, playerMP);
+ }
+
+ public static void sendAchievement(EntityPlayerMP playerMP, boolean isParty, String description, String message){
+ AchievementPacket packet = new AchievementPacket(isParty, description, message);
+ PacketHandler.Instance.sendToPlayer(packet, playerMP);
+ }
+}
diff --git a/src/main/java/kamkeel/npcs/network/enums/EnumClientPacket.java b/src/main/java/kamkeel/npcs/network/enums/EnumClientPacket.java
index ca253aa43..8e538163e 100644
--- a/src/main/java/kamkeel/npcs/network/enums/EnumClientPacket.java
+++ b/src/main/java/kamkeel/npcs/network/enums/EnumClientPacket.java
@@ -3,8 +3,8 @@ package kamkeel.npcs.network.enums;
// Packets to the Client
public enum EnumClientPacket {
SYNC,
- CHAT,
- MESSAGE,
+ CHAT_ALERT,
+ ACHIEVEMENT,
PARTY_MESSAGE,
SYNCRECIPES_ADD,
SYNCRECIPES_WORKBENCH,
@@ -35,7 +35,6 @@ public enum EnumClientPacket {
CLONER,
TELEPORTER,
OPEN_BOOK,
- DIALOG_DUMMY,
CONFIG,
ISGUIOPEN,
SCRIPT_OVERLAY_DATA,
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/AchievementPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/AchievementPacket.java
new file mode 100644
index 000000000..cec1f3b5e
--- /dev/null
+++ b/src/main/java/kamkeel/npcs/network/packets/client/AchievementPacket.java
@@ -0,0 +1,71 @@
+package kamkeel.npcs.network.packets.client;
+
+import cpw.mods.fml.common.ObfuscationReflectionHelper;
+import cpw.mods.fml.relauncher.Side;
+import io.netty.buffer.ByteBuf;
+import kamkeel.npcs.network.AbstractPacket;
+import kamkeel.npcs.network.PacketChannel;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.enums.EnumClientPacket;
+import kamkeel.npcs.util.ByteBufUtils;
+import net.minecraft.client.Minecraft;
+import net.minecraft.client.gui.achievement.GuiAchievement;
+import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.init.Items;
+import net.minecraft.stats.Achievement;
+import net.minecraft.util.StatCollector;
+import noppes.npcs.CustomItems;
+import noppes.npcs.CustomNpcs;
+import noppes.npcs.client.MessageAchievement;
+import noppes.npcs.config.ConfigClient;
+
+import java.io.IOException;
+
+public final class AchievementPacket extends AbstractPacket {
+ public static final String packetName = "Client|Achievement";
+
+ private boolean isParty;
+ private String description;
+ private String message;
+
+ public AchievementPacket() {}
+
+ public AchievementPacket(boolean isParty, String description, String message) {
+ this.isParty = isParty;
+ this.description = description;
+ this.message = message;
+ }
+
+ @Override
+ public Enum getType() {
+ return EnumClientPacket.ACHIEVEMENT;
+ }
+
+ @Override
+ public PacketChannel getChannel() {
+ return PacketHandler.CLIENT_PACKET;
+ }
+
+ @Override
+ public void sendData(ByteBuf out) throws IOException {
+ out.writeBoolean(this.isParty);
+ ByteBufUtils.writeString(out, this.description);
+ ByteBufUtils.writeString(out, this.message);
+ }
+
+ @Override
+ public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ if(!ConfigClient.BannerAlerts)
+ return;
+
+ if(CustomNpcs.side() != Side.CLIENT)
+ return;
+
+ boolean isNotParty = !in.readBoolean();
+ String description = StatCollector.translateToLocal(ByteBufUtils.readString(in));
+ String message = ByteBufUtils.readString(in);
+ Achievement ach = isNotParty ? new MessageAchievement(message, description) : new MessageAchievement(CustomItems.bag == null ? Items.paper : CustomItems.bag, message, description);
+ Minecraft.getMinecraft().guiAchievement.func_146256_a(ach);
+ ObfuscationReflectionHelper.setPrivateValue(GuiAchievement.class, Minecraft.getMinecraft().guiAchievement, ach.getDescription(), 4);
+ }
+}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/ChatPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/ChatAlertPacket.java
similarity index 69%
rename from src/main/java/kamkeel/npcs/network/packets/client/ChatPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/ChatAlertPacket.java
index 8e9452423..055f34f1a 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/ChatPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/ChatAlertPacket.java
@@ -6,21 +6,29 @@ import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.enums.EnumClientPacket;
+import kamkeel.npcs.util.ByteBufUtils;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.util.ChatComponentTranslation;
import noppes.npcs.CustomNpcs;
import noppes.npcs.Server;
+import noppes.npcs.config.ConfigClient;
import java.io.IOException;
-public final class ChatPacket extends AbstractPacket {
- public static final String packetName = "Client|Chat";
+public final class ChatAlertPacket extends AbstractPacket {
+ public static final String packetName = "Client|ChatAlert";
- public ChatPacket() {}
+ private Object[] objects;
+
+ public ChatAlertPacket() {}
+
+ public ChatAlertPacket(final Object... obs) {
+ this.objects = obs;
+ }
@Override
public Enum getType() {
- return EnumClientPacket.CHAT;
+ return EnumClientPacket.CHAT_ALERT;
}
@Override
@@ -30,11 +38,14 @@ public final class ChatPacket extends AbstractPacket {
@Override
public void sendData(ByteBuf out) throws IOException {
- // TODO: Send Packet
+ ByteBufUtils.fillBuffer(out, this.objects);
}
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ if(!ConfigClient.ChatAlerts)
+ return;
+
if(CustomNpcs.side() != Side.CLIENT)
return;
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/ChatBubblePacket.java b/src/main/java/kamkeel/npcs/network/packets/client/ChatBubblePacket.java
index 79db88414..511dd76e3 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/ChatBubblePacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/ChatBubblePacket.java
@@ -6,13 +6,13 @@ import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.enums.EnumClientPacket;
+import kamkeel.npcs.util.ByteBufUtils;
import net.minecraft.client.Minecraft;
import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.util.ChatComponentTranslation;
import noppes.npcs.CustomNpcs;
import noppes.npcs.NoppesStringUtils;
-import noppes.npcs.Server;
import noppes.npcs.client.RenderChatMessages;
import noppes.npcs.entity.EntityNPCInterface;
@@ -21,8 +21,17 @@ import java.io.IOException;
public final class ChatBubblePacket extends AbstractPacket {
public static final String packetName = "Client|ChatBubble";
+ private int entityId;
+ private String text;
+ private boolean hideText;
+
public ChatBubblePacket() {}
+ public ChatBubblePacket(int entityId, String text, boolean hideText) {
+ this.entityId = entityId;
+ this.text = text;
+ this.hideText = hideText;
+ }
@Override
public Enum getType() {
@@ -36,7 +45,9 @@ public final class ChatBubblePacket extends AbstractPacket {
@Override
public void sendData(ByteBuf out) throws IOException {
- // TODO: Send Packet
+ out.writeInt(this.entityId);
+ ByteBufUtils.writeString(out, this.text);
+ out.writeBoolean(this.hideText);
}
@Override
@@ -45,12 +56,13 @@ public final class ChatBubblePacket extends AbstractPacket {
return;
Entity entity = Minecraft.getMinecraft().theWorld.getEntityByID(in.readInt());
- if(entity == null || !(entity instanceof EntityNPCInterface))
+ if(!(entity instanceof EntityNPCInterface))
return;
+
EntityNPCInterface npc = (EntityNPCInterface) entity;
if(npc.messages == null)
npc.messages = new RenderChatMessages();
- String text = NoppesStringUtils.formatText(Server.readString(in), player, npc);
+ String text = NoppesStringUtils.formatText(ByteBufUtils.readString(in), player, npc);
npc.messages.addMessage(text, npc);
if(in.readBoolean())
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/DialogDummyPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/DialogDummyPacket.java
deleted file mode 100644
index b9c49d7cc..000000000
--- a/src/main/java/kamkeel/npcs/network/packets/client/DialogDummyPacket.java
+++ /dev/null
@@ -1,41 +0,0 @@
-package kamkeel.npcs.network.packets.client;
-
-import io.netty.buffer.ByteBuf;
-import kamkeel.npcs.network.AbstractPacket;
-import kamkeel.npcs.network.PacketChannel;
-import kamkeel.npcs.network.PacketHandler;
-import kamkeel.npcs.network.enums.EnumClientPacket;
-import net.minecraft.entity.player.EntityPlayer;
-import noppes.npcs.Server;
-import noppes.npcs.client.NoppesUtil;
-import noppes.npcs.entity.EntityDialogNpc;
-
-import java.io.IOException;
-
-public final class DialogDummyPacket extends AbstractPacket {
- public static final String packetName = "Client|DialogDummy";
-
- public DialogDummyPacket() {}
-
- @Override
- public Enum getType() {
- return EnumClientPacket.DIALOG_DUMMY;
- }
-
- @Override
- public PacketChannel getChannel() {
- return PacketHandler.CLIENT_PACKET;
- }
-
- @Override
- public void sendData(ByteBuf out) throws IOException {
- // TODO: Send Packet
- }
-
- @Override
- public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- EntityDialogNpc npc = new EntityDialogNpc(player.worldObj);
- npc.display.name = Server.readString(in);
- NoppesUtil.openDialog(Server.readNBT(in), npc, player);
- }
-}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/DialogPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/DialogPacket.java
index 33302ddf3..afd0e2162 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/DialogPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/DialogPacket.java
@@ -5,11 +5,14 @@ import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.enums.EnumClientPacket;
+import kamkeel.npcs.util.ByteBufUtils;
import net.minecraft.client.Minecraft;
import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.nbt.NBTTagCompound;
import noppes.npcs.Server;
import noppes.npcs.client.NoppesUtil;
+import noppes.npcs.entity.EntityDialogNpc;
import noppes.npcs.entity.EntityNPCInterface;
import java.io.IOException;
@@ -17,8 +20,18 @@ import java.io.IOException;
public final class DialogPacket extends AbstractPacket {
public static final String packetName = "Client|Dialog";
+ private String dummyName;
+ private int entityID;
+ private NBTTagCompound compound;
+
public DialogPacket() {}
+ public DialogPacket(String dummyName, int entityID, NBTTagCompound compound) {
+ this.dummyName = dummyName;
+ this.entityID = entityID;
+ this.compound = compound;
+ }
+
@Override
public Enum getType() {
return EnumClientPacket.DIALOG;
@@ -31,15 +44,29 @@ public final class DialogPacket extends AbstractPacket {
@Override
public void sendData(ByteBuf out) throws IOException {
- // TODO: Send Packet
+ out.writeInt(this.entityID);
+ ByteBufUtils.writeString(out, this.dummyName);
+ ByteBufUtils.writeNBT(out, this.compound);
}
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- Entity entity = Minecraft.getMinecraft().theWorld.getEntityByID(in.readInt());
- if (!(entity instanceof EntityNPCInterface)) {
- return;
+ int entityID = in.readInt();
+ String name = ByteBufUtils.readString(in);
+ NBTTagCompound tagCompound = ByteBufUtils.readNBT(in);
+
+ // Dummy NPC
+ if(entityID == -1){
+ EntityDialogNpc npc = new EntityDialogNpc(player.worldObj);
+ npc.display.name = name;
+ NoppesUtil.openDialog(tagCompound, npc, player);
+ }
+ else {
+ Entity entity = Minecraft.getMinecraft().theWorld.getEntityByID(entityID);
+ if (!(entity instanceof EntityNPCInterface)) {
+ return;
+ }
+ NoppesUtil.openDialog(tagCompound, (EntityNPCInterface) entity, player);
}
- NoppesUtil.openDialog(Server.readNBT(in), (EntityNPCInterface) entity, player);
}
}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/EditNpcPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/EditNpcPacket.java
index dc9563938..cbac6a98c 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/EditNpcPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/EditNpcPacket.java
@@ -16,8 +16,13 @@ import java.io.IOException;
public final class EditNpcPacket extends AbstractPacket {
public static final String packetName = "Client|EditNpc";
+ int entityId;
public EditNpcPacket() {}
+ public EditNpcPacket(int entityId) {
+ this.entityId = entityId;
+ }
+
@Override
public Enum getType() {
return EnumClientPacket.EDIT_NPC;
@@ -30,7 +35,7 @@ public final class EditNpcPacket extends AbstractPacket {
@Override
public void sendData(ByteBuf out) throws IOException {
- // TODO: Send Packet
+ out.writeInt(this.entityId);
}
@Override
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/MessagePacket.java b/src/main/java/kamkeel/npcs/network/packets/client/MessagePacket.java
deleted file mode 100644
index f1e00a55a..000000000
--- a/src/main/java/kamkeel/npcs/network/packets/client/MessagePacket.java
+++ /dev/null
@@ -1,53 +0,0 @@
-package kamkeel.npcs.network.packets.client;
-
-import cpw.mods.fml.common.ObfuscationReflectionHelper;
-import cpw.mods.fml.relauncher.Side;
-import io.netty.buffer.ByteBuf;
-import kamkeel.npcs.network.AbstractPacket;
-import kamkeel.npcs.network.PacketChannel;
-import kamkeel.npcs.network.PacketHandler;
-import kamkeel.npcs.network.enums.EnumClientPacket;
-import net.minecraft.client.Minecraft;
-import net.minecraft.client.gui.achievement.GuiAchievement;
-import net.minecraft.entity.player.EntityPlayer;
-import net.minecraft.stats.Achievement;
-import net.minecraft.util.StatCollector;
-import noppes.npcs.CustomNpcs;
-import noppes.npcs.Server;
-
-import java.io.IOException;
-
-public final class MessagePacket extends AbstractPacket {
- public static final String packetName = "Client|Message";
-
- public MessagePacket() {}
-
- @Override
- public Enum getType() {
- return EnumClientPacket.MESSAGE;
- }
-
- @Override
- public PacketChannel getChannel() {
- return PacketHandler.CLIENT_PACKET;
- }
-
- @Override
- public void sendData(ByteBuf out) throws IOException {
- // TODO: Send Packet
- }
-
- @Override
- public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- if(CustomNpcs.side() != Side.CLIENT)
- return;
-
- // TODO: Fix Message Packet
-// String description = StatCollector.translateToLocal(Server.readString(in));
-// String message = Server.readString(in);
-// Achievement achievement = new Achievement(message, description);
-// GuiAchievement guiAchievement = Minecraft.getMinecraft().guiAchievement;
-// guiAchievement.func_146256_a(achievement);
-// ObfuscationReflectionHelper.setPrivateValue(GuiAchievement.class, guiAchievement, achievement.getDescription(), 4);
- }
-}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/RolePacket.java b/src/main/java/kamkeel/npcs/network/packets/client/RolePacket.java
index c7b6d5e2a..1fa8fcb2f 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/RolePacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/RolePacket.java
@@ -5,6 +5,7 @@ import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.enums.EnumClientPacket;
+import kamkeel.npcs.util.ByteBufUtils;
import net.minecraft.client.Minecraft;
import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer;
@@ -18,8 +19,14 @@ import java.io.IOException;
public final class RolePacket extends AbstractPacket {
public static final String packetName = "Client|Role";
+ private NBTTagCompound compound;
+
public RolePacket() {}
+ public RolePacket(NBTTagCompound compound) {
+ this.compound = compound;
+ }
+
@Override
public Enum getType() {
return EnumClientPacket.ROLE;
@@ -32,12 +39,12 @@ public final class RolePacket extends AbstractPacket {
@Override
public void sendData(ByteBuf out) throws IOException {
- // TODO: Send Packet
+ ByteBufUtils.writeNBT(out, this.compound);
}
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- NBTTagCompound compound = Server.readNBT(in);
+ NBTTagCompound compound = ByteBufUtils.readNBT(in);
Entity entity = Minecraft.getMinecraft().theWorld.getEntityByID(compound.getInteger("EntityId"));
if (entity instanceof EntityNPCInterface) {
EntityNPCInterface npc = (EntityNPCInterface) entity;
diff --git a/src/main/java/kamkeel/npcs/util/ByteBufUtils.java b/src/main/java/kamkeel/npcs/util/ByteBufUtils.java
index 06b512228..b0b35f91b 100644
--- a/src/main/java/kamkeel/npcs/util/ByteBufUtils.java
+++ b/src/main/java/kamkeel/npcs/util/ByteBufUtils.java
@@ -9,8 +9,6 @@ import net.minecraft.network.PacketBuffer;
import net.minecraft.village.MerchantRecipeList;
import noppes.npcs.LogWriter;
-import java.io.ByteArrayOutputStream;
-import java.io.DataOutputStream;
import java.io.IOException;
import java.util.Arrays;
import java.util.List;
@@ -18,10 +16,7 @@ import java.util.Map;
public class ByteBufUtils extends cpw.mods.fml.common.network.ByteBufUtils {
- // TODO: Modify this to check if it a large packet so we don't need the condition at the bottom or make two
- // differnt methods one for fillBuffer normal and one fillLargeBuffer
- public static boolean fillBuffer(ByteBuf buffer, Enum enu, Object... obs) throws IOException{
- buffer.writeInt(enu.ordinal());
+ public static void fillBuffer(ByteBuf buffer, Object... obs) throws IOException{
for(Object ob : obs){
if(ob == null)
continue;
@@ -66,12 +61,7 @@ public class ByteBufUtils extends cpw.mods.fml.common.network.ByteBufUtils {
else if(ob instanceof NBTTagCompound)
writeNBT(buffer, (NBTTagCompound) ob);
}
- if(buffer.array().length >= 32767){
- LogWriter.error("Packet " + enu + " was too big to be send");
- LogWriter.script( "Issue occurred with the following Packet - " + enu + ":\n" + Arrays.toString(obs));
- return false;
- }
- return true;
+ return;
}
public static void writeIntArray(ByteBuf buffer, int[] arr) {
diff --git a/src/main/java/noppes/npcs/NoppesUtilServer.java b/src/main/java/noppes/npcs/NoppesUtilServer.java
index 3273f59ec..0511b4e7e 100644
--- a/src/main/java/noppes/npcs/NoppesUtilServer.java
+++ b/src/main/java/noppes/npcs/NoppesUtilServer.java
@@ -2,6 +2,12 @@ package noppes.npcs;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.controllers.SyncMaster;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.PacketUtil;
+import kamkeel.npcs.network.packets.client.DialogPacket;
+import kamkeel.npcs.network.packets.client.EditNpcPacket;
+import kamkeel.npcs.network.packets.client.RolePacket;
+import kamkeel.npcs.util.ByteBufUtils;
import net.minecraft.command.server.CommandBlockLogic;
import net.minecraft.entity.Entity;
import net.minecraft.entity.EntityList;
@@ -14,7 +20,6 @@ import net.minecraft.entity.projectile.EntityThrowable;
import net.minecraft.init.Blocks;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
-import net.minecraft.nbt.CompressedStreamTools;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.server.MinecraftServer;
import net.minecraft.tileentity.MobSpawnerBaseLogic;
@@ -42,45 +47,45 @@ import noppes.npcs.scripted.NpcAPI;
import noppes.npcs.scripted.ScriptSound;
import noppes.npcs.scripted.event.DialogEvent;
-import java.io.ByteArrayOutputStream;
-import java.io.DataOutputStream;
import java.io.File;
import java.io.IOException;
import java.text.DecimalFormat;
import java.util.*;
-import java.util.zip.GZIPOutputStream;
-import static kamkeel.npcs.network.KamUtilServer.sendScrollData;
+import static kamkeel.npcs.network.PacketUtil.sendScrollData;
+import static kamkeel.npcs.network.PacketUtil.sendScrollGroup;
public class NoppesUtilServer {
private static HashMap editingQuests = new HashMap();
public static void setEditingNpc(EntityPlayer player, EntityNPCInterface npc){
- PlayerData data = PlayerDataController.Instance.getPlayerData(player);
- data.editingNpc = npc;
- if(npc != null)
- Server.sendDataChecked((EntityPlayerMP)player, EnumPacketClient.EDIT_NPC, npc.getEntityId());
- }
- public static EntityNPCInterface getEditingNpc(EntityPlayer player){
- PlayerData data = PlayerDataController.Instance.getPlayerData(player);
- return data.editingNpc;
+ PlayerData data = PlayerDataController.Instance.getPlayerData(player);
+ data.editingNpc = npc;
+ if(npc != null)
+ PacketHandler.Instance.sendToPlayer(new EditNpcPacket(npc.getEntityId()), (EntityPlayerMP)player);
+ }
+
+ public static EntityNPCInterface getEditingNpc(EntityPlayer player){
+ PlayerData data = PlayerDataController.Instance.getPlayerData(player);
+ return data.editingNpc;
+ }
+
+ public static void setEditingQuest(EntityPlayer player, Quest quest) {
+ editingQuests.put(player.getCommandSenderName(), quest);
}
- public static void setEditingQuest(EntityPlayer player, Quest quest) {
- editingQuests.put(player.getCommandSenderName(), quest);
- }
public static Quest getEditingQuest(EntityPlayer player){
- return editingQuests.get(player.getCommandSenderName());
+ return editingQuests.get(player.getCommandSenderName());
}
public static void sendRoleData(EntityPlayer player, EntityNPCInterface npc){
- if(npc.advanced.role == EnumRoleType.None)
- return;
- NBTTagCompound comp = new NBTTagCompound();
- npc.roleInterface.writeToNBT(comp);
- comp.setInteger("EntityId", npc.getEntityId());
- comp.setInteger("Role", npc.advanced.role.ordinal());
- Server.sendData((EntityPlayerMP)player, EnumPacketClient.ROLE, comp);
+ if(npc.advanced.role == EnumRoleType.None)
+ return;
+ NBTTagCompound comp = new NBTTagCompound();
+ npc.roleInterface.writeToNBT(comp);
+ comp.setInteger("EntityId", npc.getEntityId());
+ comp.setInteger("Role", npc.advanced.role.ordinal());
+ PacketHandler.Instance.sendToPlayer(new RolePacket(comp), (EntityPlayerMP)player);
}
public static void sendFactionDataAll(EntityPlayerMP player) {
@@ -187,11 +192,12 @@ public class NoppesUtilServer {
if(npc instanceof EntityDialogNpc || dia.id < 0){
dialog.hideNPC = true;
- Server.sendData((EntityPlayerMP)player, EnumPacketClient.DIALOG_DUMMY, npc.getCommandSenderName(), dialog.writeToNBT(new NBTTagCompound()));
+ PacketHandler.Instance.sendToPlayer(new DialogPacket(npc.getCommandSenderName(), -1, dialog.writeToNBT(new NBTTagCompound())), (EntityPlayerMP)player);
}
else
- Server.sendData((EntityPlayerMP)player, EnumPacketClient.DIALOG, npc.getEntityId(), dialog.writeToNBT(new NBTTagCompound()));
- dia.factionOptions.addPoints(player);
+ PacketHandler.Instance.sendToPlayer(new DialogPacket("Real", npc.getEntityId(), dialog.writeToNBT(new NBTTagCompound())), (EntityPlayerMP)player);
+
+ dia.factionOptions.addPoints(player);
if(dialog.hasQuest())
PlayerQuestController.addActiveQuest(new QuestData(dialog.getQuest()),player);
if(!dialog.command.isEmpty()){
@@ -266,9 +272,6 @@ public class NoppesUtilServer {
player.destroyCurrentEquippedItem();
}
- public static DataOutputStream getDataOutputStream(ByteArrayOutputStream stream) throws IOException{
- return new DataOutputStream(new GZIPOutputStream(stream));
- }
public static void sendOpenGui(EntityPlayer player,
EnumGuiType gui, EntityNPCInterface npc) {
sendOpenGui(player, gui, npc, 0, 0, 0);
@@ -292,14 +295,14 @@ public class NoppesUtilServer {
return;
}
else{
- Server.sendDataChecked((EntityPlayerMP)player, EnumPacketClient.GUI, gui.ordinal(), i, j, k);
+ BOB.sendDataChecked((EntityPlayerMP)player, EnumPacketClient.GUI, gui.ordinal(), i, j, k);
}
ArrayList list = getScrollData(player, gui, npc);
if(list == null || list.isEmpty())
return;
- Server.sendData((EntityPlayerMP)player, EnumPacketClient.SCROLL_LIST, list);
- }
+ PacketUtil.sendList((EntityPlayerMP)player, list);
+ }
public static void sendOpenGuiNoDelay(final EntityPlayer player,
final EnumGuiType gui, final EntityNPCInterface npc, final int i, final int j, final int k) {
@@ -314,13 +317,13 @@ public class NoppesUtilServer {
return;
}
else{
- Server.sendDataChecked((EntityPlayerMP)player, EnumPacketClient.GUI, gui.ordinal(), i, j, k);
+ BOB.sendDataChecked((EntityPlayerMP)player, EnumPacketClient.GUI, gui.ordinal(), i, j, k);
}
ArrayList list = getScrollData(player, gui, npc);
if(list == null || list.isEmpty())
return;
- Server.sendData((EntityPlayerMP)player, EnumPacketClient.SCROLL_LIST, list);
+ PacketUtil.sendList((EntityPlayerMP)player, list);
}
@@ -356,14 +359,14 @@ public class NoppesUtilServer {
return null;
}
public static void spawnParticle(Entity entity,String particle,int dimension){
- Server.sendAssociatedData(entity, EnumPacketClient.PARTICLE, entity.posX, entity.posY, entity.posZ, entity.height, entity.width, entity.yOffset, particle);
+ BOB.sendAssociatedData(entity, EnumPacketClient.PARTICLE, entity.posX, entity.posY, entity.posZ, entity.height, entity.width, entity.yOffset, particle);
}
public static void spawnScriptedParticle(NBTTagCompound compound, int dimensionId){
List list = MinecraftServer.getServer().getConfigurationManager().playerEntityList;
for (EntityPlayer player : list) {
if (player.worldObj.provider.dimensionId == dimensionId) {
- Server.sendData((EntityPlayerMP) player, EnumPacketClient.SCRIPTED_PARTICLE, compound);
+ BOB.sendData((EntityPlayerMP) player, EnumPacketClient.SCRIPTED_PARTICLE, compound);
}
}
}
@@ -411,7 +414,7 @@ public class NoppesUtilServer {
}
public static void deleteNpc(EntityNPCInterface npc,EntityPlayer player) {
- Server.sendAssociatedData(npc, EnumPacketClient.DELETE_NPC, npc.getEntityId());
+ BOB.sendAssociatedData(npc, EnumPacketClient.DELETE_NPC, npc.getEntityId());
}
public static void createMobSpawner(int x, int y, int z, NBTTagCompound comp, EntityPlayer player) {
@@ -515,7 +518,7 @@ public class NoppesUtilServer {
int id = buffer.readInt();
if(EnumPlayerData.values().length <= id)
return;
- String name = Server.readString(buffer);
+ String name = ByteBufUtils.readString(buffer);
EnumPlayerData type = EnumPlayerData.values()[id];
EntityPlayer pl = MinecraftServer.getServer().getConfigurationManager().func_152612_a(name);
PlayerData playerdata = null;
@@ -596,29 +599,6 @@ public class NoppesUtilServer {
}
sendScrollData(player, map);
}
-// public static void sendScrollData(EntityPlayerMP player, Map map){
-// Map send = new HashMap();
-// for(String key : map.keySet()){
-// send.put(key, map.get(key));
-// if(send.size() == 100){
-// Server.sendData(player, EnumPacketClient.SCROLL_DATA_PART, send);
-// send = new HashMap();
-// }
-// }
-// Server.sendData(player, EnumPacketClient.SCROLL_DATA, send);
-// }
-
- public static void sendScrollGroup(EntityPlayerMP player, Map map){
- Map send = new HashMap();
- for(String key : map.keySet()){
- send.put(key, map.get(key));
- if(send.size() == 100){
- Server.sendData(player, EnumPacketClient.SCROLL_GROUP_PART, send);
- send = new HashMap();
- }
- }
- Server.sendData(player, EnumPacketClient.SCROLL_GROUP, send);
- }
public static void sendDialogData(EntityPlayerMP player, DialogCategory category) {
if(category == null)
@@ -693,8 +673,7 @@ public class NoppesUtilServer {
NBTTagCompound compound = option.writeNBT();
compound.setInteger("Position", pos);
- Server.sendData((EntityPlayerMP)player, EnumPacketClient.GUI_DATA, compound);
-
+ BOB.sendData((EntityPlayerMP)player, EnumPacketClient.GUI_DATA, compound);
}
}
@@ -730,13 +709,13 @@ public class NoppesUtilServer {
public static void setClonerGui(EntityPlayerMP player, int x, int y, int z){
if(player == null)
return;
- Server.sendData(player, EnumPacketClient.CLONER, x, y, z);
+ BOB.sendData(player, EnumPacketClient.CLONER, x, y, z);
}
public static void setTeleporterGUI(EntityPlayerMP player){
if(player == null)
return;
- Server.sendData(player, EnumPacketClient.TELEPORTER);
+ BOB.sendData(player, EnumPacketClient.TELEPORTER);
}
public static void setRecipeGui(EntityPlayerMP player, RecipeCarpentry recipe){
@@ -748,13 +727,13 @@ public class NoppesUtilServer {
ContainerManageRecipes container = (ContainerManageRecipes) player.openContainer;
container.setRecipe(recipe);
- Server.sendData(player, EnumPacketClient.GUI_DATA, recipe.writeNBT());
+ BOB.sendData(player, EnumPacketClient.GUI_DATA, recipe.writeNBT());
}
public static void sendBank(EntityPlayerMP player,Bank bank) {
NBTTagCompound compound = new NBTTagCompound();
bank.writeEntityToNBT(compound);
- Server.sendData(player, EnumPacketClient.GUI_DATA, compound);
+ BOB.sendData(player, EnumPacketClient.GUI_DATA, compound);
if(player.openContainer instanceof ContainerManageBanks){
((ContainerManageBanks)player.openContainer).setBank(bank);
@@ -780,14 +759,14 @@ public class NoppesUtilServer {
}
public static void sendGuiError(EntityPlayer player, int i) {
- Server.sendData((EntityPlayerMP)player, EnumPacketClient.GUI_ERROR, i, new NBTTagCompound());
+ BOB.sendData((EntityPlayerMP)player, EnumPacketClient.GUI_ERROR, i, new NBTTagCompound());
}
public static void sendGuiClose(EntityPlayerMP player, int i, NBTTagCompound comp) {
if(player.openContainer != player.inventoryContainer){
player.openContainer = player.inventoryContainer;
}
- Server.sendData(player, EnumPacketClient.GUI_CLOSE, i, comp);
+ BOB.sendData(player, EnumPacketClient.GUI_CLOSE, i, comp);
}
public static Entity spawnCloneWithProtection(NBTTagCompound compound, int x, int y,
@@ -829,7 +808,7 @@ public class NoppesUtilServer {
public static Entity spawnClone(NBTTagCompound compound, int x, int y,
int z, World worldObj) {
- Entity entity = NoppesUtilServer.getEntityFromNBT(compound,x,y,z,worldObj);
+ Entity entity = getEntityFromNBT(compound,x,y,z,worldObj);
if(entity == null){
return null;
}
diff --git a/src/main/java/noppes/npcs/PacketHandlerServer.java b/src/main/java/noppes/npcs/PacketHandlerServer.java
index 149a3db47..ac713f384 100644
--- a/src/main/java/noppes/npcs/PacketHandlerServer.java
+++ b/src/main/java/noppes/npcs/PacketHandlerServer.java
@@ -6,7 +6,7 @@ import cpw.mods.fml.common.network.FMLNetworkEvent.ServerCustomPacketEvent;
import cpw.mods.fml.relauncher.Side;
import foxz.utils.Market;
import io.netty.buffer.ByteBuf;
-import kamkeel.npcs.network.KamUtilServer;
+import kamkeel.npcs.network.PacketUtil;
import net.minecraft.entity.Entity;
import net.minecraft.entity.EntityList;
import net.minecraft.entity.passive.EntityVillager;
@@ -103,7 +103,7 @@ public class PacketHandlerServer{
WorldProvider provider = DimensionManager.createProviderFor(id);
map.put(provider.getDimensionName(), id);
}
- KamUtilServer.sendScrollData(player, map);
+ PacketUtil.sendScrollData(player, map);
} else if(type == EnumPacketServer.TagsGet){
NoppesUtilServer.sendTagDataAll(player);
} else if (type == EnumPacketServer.NpcTagsGet) {
@@ -585,7 +585,7 @@ public class PacketHandlerServer{
Server.sendData(player, EnumPacketClient.GUI_DATA, compound);
}
else if(type == EnumPacketServer.DialogCategoriesGet){
- KamUtilServer.sendScrollData(player, DialogController.Instance.getScroll());
+ PacketUtil.sendScrollData(player, DialogController.Instance.getScroll());
}
else if(type == EnumPacketServer.DialogsGetFromDialog){
Dialog dialog = DialogController.Instance.dialogs.get(buffer.readInt());
@@ -798,7 +798,7 @@ public class PacketHandlerServer{
NoppesUtilServer.setRecipeGui(player,recipe);
}
else if(type == EnumPacketServer.NaturalSpawnGetAll){
- KamUtilServer.sendScrollData(player, SpawnController.Instance.getScroll());
+ PacketUtil.sendScrollData(player, SpawnController.Instance.getScroll());
}
else if(type == EnumPacketServer.NaturalSpawnGet){
SpawnData spawn = SpawnController.Instance.getSpawnData(buffer.readInt());
@@ -811,21 +811,21 @@ public class PacketHandlerServer{
data.readNBT(Server.readNBT(buffer));
SpawnController.Instance.saveSpawnData(data);
- KamUtilServer.sendScrollData(player, SpawnController.Instance.getScroll());
+ PacketUtil.sendScrollData(player, SpawnController.Instance.getScroll());
}
else if(type == EnumPacketServer.NaturalSpawnRemove){
SpawnController.Instance.removeSpawnData(buffer.readInt());
- KamUtilServer.sendScrollData(player, SpawnController.Instance.getScroll());
+ PacketUtil.sendScrollData(player, SpawnController.Instance.getScroll());
}
else if(type == EnumPacketServer.DialogCategorySave){
DialogCategory category = new DialogCategory();
category.readNBT(Server.readNBT(buffer));
DialogController.Instance.saveCategory(category);
- KamUtilServer.sendScrollData(player, DialogController.Instance.getScroll());
+ PacketUtil.sendScrollData(player, DialogController.Instance.getScroll());
}
else if(type == EnumPacketServer.DialogCategoryRemove){
DialogController.Instance.removeCategory(buffer.readInt());
- KamUtilServer.sendScrollData(player, DialogController.Instance.getScroll());
+ PacketUtil.sendScrollData(player, DialogController.Instance.getScroll());
}
else if(type == EnumPacketServer.DialogCategoryGet){
DialogCategory category = DialogController.Instance.categories.get(buffer.readInt());
diff --git a/src/main/java/noppes/npcs/client/PacketHandlerClient.java b/src/main/java/noppes/npcs/client/PacketHandlerClient.java
index f4b9f5c41..657fbf12b 100644
--- a/src/main/java/noppes/npcs/client/PacketHandlerClient.java
+++ b/src/main/java/noppes/npcs/client/PacketHandlerClient.java
@@ -58,41 +58,7 @@ public class PacketHandlerClient extends PacketHandlerServer{
}
private void client(ByteBuf buffer, final EntityPlayer player, EnumPacketClient type) throws IOException{
- if(type == EnumPacketClient.CHATBUBBLE){
- Entity entity = Minecraft.getMinecraft().theWorld.getEntityByID(buffer.readInt());
- if(entity == null || !(entity instanceof EntityNPCInterface))
- return;
- EntityNPCInterface npc = (EntityNPCInterface) entity;
- if(npc.messages == null)
- npc.messages = new RenderChatMessages();
- String text = NoppesStringUtils.formatText(Server.readString(buffer), player, npc);
- npc.messages.addMessage(text, npc);
-
- if(buffer.readBoolean())
- player.addChatMessage(new ChatComponentTranslation(npc.getCommandSenderName() + ": " + text));
- }
- else if(type == EnumPacketClient.CHAT){
- if(!ConfigClient.ChatAlerts)
- return;
-
- String message = "";
- String str;
- while((str = Server.readString(buffer)) != null && !str.isEmpty())
- message += StatCollector.translateToLocal(str);
-
- player.addChatMessage(new ChatComponentTranslation(message));
- }
- else if(type == EnumPacketClient.MESSAGE || type == EnumPacketClient.PARTY_MESSAGE){
- if(!ConfigClient.BannerAlerts)
- return;
-
- String description = StatCollector.translateToLocal(Server.readString(buffer));
- String message = Server.readString(buffer);
- Achievement ach = type == EnumPacketClient.MESSAGE ? new MessageAchievement(message, description) : new MessageAchievement(CustomItems.bag == null ? Items.paper : CustomItems.bag, message, description);
- Minecraft.getMinecraft().guiAchievement.func_146256_a(ach);
- ObfuscationReflectionHelper.setPrivateValue(GuiAchievement.class, Minecraft.getMinecraft().guiAchievement, ach.getDescription(), 4);
- }
- else if(type == EnumPacketClient.SYNCRECIPES_ADD){
+ if(type == EnumPacketClient.SYNCRECIPES_ADD){
NBTTagList list = Server.readNBT(buffer).getTagList("recipes", 10);
if(list == null)
return;
@@ -181,21 +147,6 @@ public class PacketHandlerClient extends PacketHandlerServer{
return;
((EntityNPCInterface)entity).delete();
}
- else if(type == EnumPacketClient.SCROLL_LIST){
- NoppesUtil.setScrollList(buffer);
- }
- else if(type == EnumPacketClient.SCROLL_DATA){
- NoppesUtil.setScrollData(buffer);
- }
- else if(type == EnumPacketClient.SCROLL_DATA_PART){
- NoppesUtil.addScrollData(buffer);
- }
- else if(type == EnumPacketClient.SCROLL_GROUP){
- NoppesUtil.setScrollGroup(buffer);
- }
- else if(type == EnumPacketClient.SCROLL_GROUP_PART){
- NoppesUtil.addScrollGroup(buffer);
- }
else if(type == EnumPacketClient.SCROLL_SELECTED){
GuiScreen gui = Minecraft.getMinecraft().currentScreen;
if(gui == null || !(gui instanceof IScrollData))
diff --git a/src/main/java/noppes/npcs/constants/EnumPacketClient.java b/src/main/java/noppes/npcs/constants/EnumPacketClient.java
index 3ce788527..b6b9ffa45 100644
--- a/src/main/java/noppes/npcs/constants/EnumPacketClient.java
+++ b/src/main/java/noppes/npcs/constants/EnumPacketClient.java
@@ -2,9 +2,6 @@ package
noppes.npcs.constants;
public enum EnumPacketClient {
- CHAT,
- MESSAGE,
- PARTY_MESSAGE,
SYNCRECIPES_ADD,
SYNCRECIPES_WORKBENCH,
DIALOG,
@@ -18,11 +15,6 @@ public enum EnumPacketClient {
SCRIPTED_PARTICLE,
PARTICLE,
DELETE_NPC,
- SCROLL_LIST,
- SCROLL_DATA,
- SCROLL_DATA_PART,
- SCROLL_GROUP,
- SCROLL_GROUP_PART,
SCROLL_SELECTED,
GUI_REDSTONE,
GUI_WAYPOINT,
@@ -30,7 +22,6 @@ public enum EnumPacketClient {
GUI_ERROR,
GUI_CLOSE,
VILLAGER_LIST,
- CHATBUBBLE,
SYNCRECIPES_CARPENTRYBENCH,
CLONE,
CLONER,
diff --git a/src/main/java/noppes/npcs/controllers/PartyController.java b/src/main/java/noppes/npcs/controllers/PartyController.java
index 1ceb2440d..ec21e8951 100644
--- a/src/main/java/noppes/npcs/controllers/PartyController.java
+++ b/src/main/java/noppes/npcs/controllers/PartyController.java
@@ -1,5 +1,6 @@
package noppes.npcs.controllers;
+import kamkeel.npcs.network.PacketUtil;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.nbt.NBTTagCompound;
@@ -68,8 +69,8 @@ public class PartyController {
playerData.partyUUID = null;
if(player != null){
sendInviteData((EntityPlayerMP) player);
- Server.sendData((EntityPlayerMP) player, EnumPacketClient.PARTY_MESSAGE, "party.disbandAlert");
- Server.sendData((EntityPlayerMP) player, EnumPacketClient.CHAT, "\u00A7c", "party.disbandMessage", "!");
+ PacketUtil.sendAchievement((EntityPlayerMP) player, true, "party.disbandAlert", "");
+ PacketUtil.sendChatAlert((EntityPlayerMP) player, "\u00A7c", "party.disbandMessage", "!");
}
}
}
@@ -84,14 +85,14 @@ public class PartyController {
for(String name : party.getPlayerNames()){
EntityPlayer playerMP = NoppesUtilServer.getPlayerByName(name);
if(playerMP != null){
- Server.sendData((EntityPlayerMP) playerMP, EnumPacketClient.PARTY_MESSAGE, "party.kickOtherAlert", kickPlayerName);
- Server.sendData((EntityPlayerMP) playerMP, EnumPacketClient.CHAT, "\u00A7e", kickPlayerName, " \u00A74", "party.kickOtherChat", "!");
+ PacketUtil.sendAchievement((EntityPlayerMP) playerMP, true, "party.kickOtherAlert", kickPlayerName);
+ PacketUtil.sendChatAlert((EntityPlayerMP) playerMP, "\u00A7e", kickPlayerName, " \u00A74", "party.kickOtherChat", "!");
}
}
if(kickPlayer != null){
- Server.sendData((EntityPlayerMP) kickPlayer, EnumPacketClient.PARTY_MESSAGE, "party.kickYouAlert", "");
- Server.sendData((EntityPlayerMP) kickPlayer, EnumPacketClient.CHAT, "\u00A74", "party.kickYouChat", "!");
+ PacketUtil.sendAchievement((EntityPlayerMP) kickPlayer, true, "party.kickYouAlert", "");
+ PacketUtil.sendChatAlert((EntityPlayerMP) kickPlayer, "\u00A74", "party.kickYouChat", "!");
}
}
@@ -102,12 +103,12 @@ public class PartyController {
for(String name : party.getPlayerNames()){
EntityPlayer playerMP = NoppesUtilServer.getPlayerByName(name);
if(playerMP != null){
- Server.sendData((EntityPlayerMP) playerMP, EnumPacketClient.PARTY_MESSAGE, "party.leaveOtherAlert", leavingPlayer.getCommandSenderName());
- Server.sendData((EntityPlayerMP) playerMP, EnumPacketClient.CHAT, "\u00A7e", leavingPlayer.getCommandSenderName(), " \u00A7c", "party.leaveOtherChat", "!");
+ PacketUtil.sendAchievement((EntityPlayerMP) playerMP, true, "party.leaveOtherAlert", leavingPlayer.getCommandSenderName());
+ PacketUtil.sendChatAlert((EntityPlayerMP) playerMP, "\u00A7e", leavingPlayer.getCommandSenderName(), " \u00A7c", "party.leaveOtherChat", "!");
}
}
- Server.sendData((EntityPlayerMP) leavingPlayer, EnumPacketClient.PARTY_MESSAGE, "party.leaveYouAlert", "");
- Server.sendData((EntityPlayerMP) leavingPlayer, EnumPacketClient.CHAT, "\u00A7c", "party.leaveYouChat", "!");
+ PacketUtil.sendAchievement((EntityPlayerMP) leavingPlayer, true, "party.leaveYouAlert", "");
+ PacketUtil.sendChatAlert((EntityPlayerMP) leavingPlayer, "\u00A7c", "party.leaveYouChat", "!");
}
public void pingPartyUpdate(Party party){
@@ -183,9 +184,7 @@ public class PartyController {
System.arraycopy(chatAlerts, 0, args, 1, chatAlerts.length);
args[args.length - 1] = "!"; // Add "!" at the end
-
- // Pass args to Server.sendData using spread operator
- Server.sendData((EntityPlayerMP) playerMP, EnumPacketClient.CHAT, args);
+ PacketUtil.sendChatAlert((EntityPlayerMP) playerMP, args);
}
}
}
diff --git a/src/main/java/noppes/npcs/controllers/PlayerQuestController.java b/src/main/java/noppes/npcs/controllers/PlayerQuestController.java
index 8a75bbcb1..df8c8b165 100644
--- a/src/main/java/noppes/npcs/controllers/PlayerQuestController.java
+++ b/src/main/java/noppes/npcs/controllers/PlayerQuestController.java
@@ -1,13 +1,12 @@
package noppes.npcs.controllers;
+import kamkeel.npcs.network.PacketUtil;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.util.ChatComponentTranslation;
import noppes.npcs.EventHooks;
import noppes.npcs.NoppesStringUtils;
import noppes.npcs.NoppesUtilServer;
-import noppes.npcs.Server;
-import noppes.npcs.constants.EnumPacketClient;
import noppes.npcs.constants.EnumQuestRepeat;
import noppes.npcs.constants.EnumQuestType;
import noppes.npcs.controllers.data.PlayerData;
@@ -45,8 +44,8 @@ public class PlayerQuestController {
data.activeQuests.put(questData.quest.id,questData);
if (questData.sendAlerts) {
- Server.sendData((EntityPlayerMP) player, EnumPacketClient.MESSAGE, "quest.newquest", questData.quest.title);
- Server.sendData((EntityPlayerMP) player, EnumPacketClient.CHAT, "quest.newquest", ": ", questData.quest.title);
+ PacketUtil.sendAchievement((EntityPlayerMP) player, false, "quest.newquest", questData.quest.title);
+ PacketUtil.sendChatAlert((EntityPlayerMP) player, "quest.newquest", ": ", questData.quest.title);
}
playerData.updateClient = true;
} else {
@@ -76,8 +75,8 @@ public class PlayerQuestController {
}
}
if (questData != null && questData.sendAlerts) {
- Server.sendData((EntityPlayerMP) player, EnumPacketClient.MESSAGE, "quest.completed", questData.quest.title);
- Server.sendData((EntityPlayerMP) player, EnumPacketClient.CHAT, "quest.completed", ": ", questData.quest.title);
+ PacketUtil.sendAchievement((EntityPlayerMP) player, false, "quest.completed", questData.quest.title);
+ PacketUtil.sendChatAlert((EntityPlayerMP) player, "quest.completed", ": ", questData.quest.title);
}
playerdata.updateClient = true;
}
@@ -98,8 +97,8 @@ public class PlayerQuestController {
}
}
if (questData != null && questData.sendAlerts) {
- Server.sendData((EntityPlayerMP) player, EnumPacketClient.MESSAGE, "quest.completed", questData.quest.title);
- Server.sendData((EntityPlayerMP) player, EnumPacketClient.CHAT, "quest.completed", ": ", questData.quest.title);
+ PacketUtil.sendAchievement((EntityPlayerMP) player, false, "quest.completed", questData.quest.title);
+ PacketUtil.sendChatAlert((EntityPlayerMP) player, "quest.completed", ": ", questData.quest.title);
}
playerdata.updateClient = true;
}
diff --git a/src/main/java/noppes/npcs/controllers/data/PlayerData.java b/src/main/java/noppes/npcs/controllers/data/PlayerData.java
index b4d65091a..b79f3f092 100644
--- a/src/main/java/noppes/npcs/controllers/data/PlayerData.java
+++ b/src/main/java/noppes/npcs/controllers/data/PlayerData.java
@@ -1,6 +1,7 @@
package noppes.npcs.controllers.data;
import kamkeel.npcs.addon.DBCAddon;
+import kamkeel.npcs.network.PacketUtil;
import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.EntityPlayerMP;
@@ -11,11 +12,9 @@ import net.minecraftforge.common.IExtendedEntityProperties;
import noppes.npcs.CustomNpcs;
import noppes.npcs.LogWriter;
import noppes.npcs.PacketHandlerServer;
-import noppes.npcs.Server;
import noppes.npcs.api.entity.ICustomNpc;
import noppes.npcs.api.handler.*;
import noppes.npcs.config.ConfigMain;
-import noppes.npcs.constants.EnumPacketClient;
import noppes.npcs.constants.EnumRoleType;
import noppes.npcs.controllers.PartyController;
import noppes.npcs.controllers.PlayerDataController;
@@ -265,8 +264,9 @@ public class PlayerData implements IExtendedEntityProperties, IPlayerData {
public void inviteToParty(Party party) {
if (party != null && this.partyUUID == null && !this.partyInvites.contains(party.getPartyUUID())) {
this.partyInvites.add(party.getPartyUUID());
- Server.sendData((EntityPlayerMP)this.player, EnumPacketClient.PARTY_MESSAGE, "party.inviteAlert", party.getPartyLeader().getCommandSenderName());
- Server.sendData((EntityPlayerMP)this.player, EnumPacketClient.CHAT, "\u00A7a", "party.inviteChat", " ", party.getPartyLeader().getCommandSenderName(), "!");
+
+ PacketUtil.sendAchievement((EntityPlayerMP) player, true, "party.inviteAlert", party.getPartyLeader().getCommandSenderName());
+ PacketUtil.sendChatAlert((EntityPlayerMP) player, "\u00A7a", "party.inviteChat", " ", party.getPartyLeader().getCommandSenderName(), "!");
}
}
diff --git a/src/main/java/noppes/npcs/controllers/data/PlayerQuestData.java b/src/main/java/noppes/npcs/controllers/data/PlayerQuestData.java
index 3acf88cd6..ac779f0d1 100644
--- a/src/main/java/noppes/npcs/controllers/data/PlayerQuestData.java
+++ b/src/main/java/noppes/npcs/controllers/data/PlayerQuestData.java
@@ -1,5 +1,6 @@
package noppes.npcs.controllers.data;
+import kamkeel.npcs.network.PacketUtil;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.nbt.NBTTagCompound;
@@ -217,9 +218,9 @@ public class PlayerQuestData implements IPlayerQuestData {
return;
QuestData questdata = new QuestData(quest);
activeQuests.put(id, questdata);
- Server.sendData((EntityPlayerMP)parent.player, EnumPacketClient.MESSAGE, "quest.newquest", quest.title);
- Server.sendData((EntityPlayerMP)parent.player, EnumPacketClient.CHAT, "quest.newquest", ": ", quest.title);
+ PacketUtil.sendAchievement((EntityPlayerMP) parent.player, false, "quest.newquest", quest.title);
+ PacketUtil.sendChatAlert((EntityPlayerMP) parent.player, "quest.newquest", ": ", quest.title);
parent.updateClient = true;
}
diff --git a/src/main/java/noppes/npcs/entity/EntityNPCInterface.java b/src/main/java/noppes/npcs/entity/EntityNPCInterface.java
index c9df8b905..1a222c915 100644
--- a/src/main/java/noppes/npcs/entity/EntityNPCInterface.java
+++ b/src/main/java/noppes/npcs/entity/EntityNPCInterface.java
@@ -7,6 +7,8 @@ import cpw.mods.fml.relauncher.SideOnly;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.addon.DBCAddon;
import kamkeel.npcs.addon.client.DBCClient;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.packets.client.ChatBubblePacket;
import net.minecraft.block.Block;
import net.minecraft.block.material.Material;
import net.minecraft.client.Minecraft;
@@ -1022,7 +1024,8 @@ public abstract class EntityNPCInterface extends EntityCreature implements IEnti
if(!line.getSound().isEmpty()){
Server.sendData((EntityPlayerMP)player, EnumPacketClient.PLAY_SOUND, line.getSound(), (float)posX, (float)posY, (float)posZ);
}
- Server.sendData((EntityPlayerMP)player, EnumPacketClient.CHATBUBBLE, this.getEntityId(), line.getText(), !line.hideText());
+
+ PacketHandler.Instance.sendToPlayer(new ChatBubblePacket(this.getEntityId(), line.getText(), !line.hideText()), (EntityPlayerMP)player);
}
public boolean getAlwaysRenderNameTagForRender(){
return true;
diff --git a/src/main/java/noppes/npcs/scripted/entity/ScriptPlayer.java b/src/main/java/noppes/npcs/scripted/entity/ScriptPlayer.java
index 8eef50b4e..2aee9c6a0 100644
--- a/src/main/java/noppes/npcs/scripted/entity/ScriptPlayer.java
+++ b/src/main/java/noppes/npcs/scripted/entity/ScriptPlayer.java
@@ -1,5 +1,6 @@
package noppes.npcs.scripted.entity;
+import kamkeel.npcs.network.PacketUtil;
import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.item.Item;
@@ -45,7 +46,6 @@ import noppes.npcs.util.ValueUtil;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
-import java.util.Set;
public class ScriptPlayer extends ScriptLivingBase implements IPlayer {
public T player;
@@ -263,8 +263,9 @@ public class ScriptPlayer extends ScriptLivingBase
return;
QuestData questdata = new QuestData(quest);
data.questData.activeQuests.put(id, questdata);
- Server.sendData((EntityPlayerMP)player, EnumPacketClient.MESSAGE, "quest.newquest", quest.title);
- Server.sendData((EntityPlayerMP)player, EnumPacketClient.CHAT, "quest.newquest", ": ", quest.title);
+
+ PacketUtil.sendAchievement((EntityPlayerMP) player, false, "quest.newquest", quest.title);
+ PacketUtil.sendChatAlert((EntityPlayerMP) player, "quest.newquest", ": ", quest.title);
data.updateClient = true;
}
From 4eae773f86aa0ccfbd3e06cad61f850937449da1 Mon Sep 17 00:00:00 2001
From: Kam
Date: Wed, 29 Jan 2025 22:56:28 -0500
Subject: [PATCH 019/357] Still going
---
.../kamkeel/npcs/network/PacketHandler.java | 12 ++++++
.../java/kamkeel/npcs/network/PacketUtil.java | 26 ++++++++++++
.../npcs/network/enums/EnumClientPacket.java | 1 -
.../packets/client/gui/ClonerGUIPacket.java | 41 -------------------
.../packets/client/gui/GuiClosePacket.java | 14 ++++++-
.../packets/client/gui/GuiDataPacket.java | 13 ++++--
.../packets/client/gui/GuiErrorPacket.java | 14 ++++++-
.../{GuiPacket.java => GuiOpenPacket.java} | 27 ++++++++++--
.../java/noppes/npcs/NoppesUtilServer.java | 19 ++++-----
.../java/noppes/npcs/PacketHandlerServer.java | 6 +--
.../java/noppes/npcs/client/ClientProxy.java | 2 +-
.../npcs/client/PacketHandlerClient.java | 7 +---
.../noppes/npcs/constants/EnumGuiType.java | 2 +-
13 files changed, 110 insertions(+), 74 deletions(-)
delete mode 100644 src/main/java/kamkeel/npcs/network/packets/client/gui/ClonerGUIPacket.java
rename src/main/java/kamkeel/npcs/network/packets/client/gui/{GuiPacket.java => GuiOpenPacket.java} (61%)
diff --git a/src/main/java/kamkeel/npcs/network/PacketHandler.java b/src/main/java/kamkeel/npcs/network/PacketHandler.java
index 184a64329..b80ec1480 100644
--- a/src/main/java/kamkeel/npcs/network/PacketHandler.java
+++ b/src/main/java/kamkeel/npcs/network/PacketHandler.java
@@ -11,6 +11,11 @@ import kamkeel.npcs.network.enums.EnumPacketType;
import kamkeel.npcs.network.packets.client.AchievementPacket;
import kamkeel.npcs.network.packets.client.ChatAlertPacket;
import kamkeel.npcs.network.packets.client.ChatBubblePacket;
+import kamkeel.npcs.network.packets.client.EditNpcPacket;
+import kamkeel.npcs.network.packets.client.gui.GuiClosePacket;
+import kamkeel.npcs.network.packets.client.gui.GuiDataPacket;
+import kamkeel.npcs.network.packets.client.gui.GuiErrorPacket;
+import kamkeel.npcs.network.packets.client.gui.GuiOpenPacket;
import kamkeel.npcs.network.packets.client.large.LargeScrollDataPacket;
import kamkeel.npcs.network.packets.client.large.LargeScrollGroupPacket;
import kamkeel.npcs.network.packets.client.large.LargeScrollListPacket;
@@ -57,6 +62,13 @@ public final class PacketHandler {
CLIENT_PACKET.registerPacket(new ChatBubblePacket());
CLIENT_PACKET.registerPacket(new ChatAlertPacket());
CLIENT_PACKET.registerPacket(new AchievementPacket());
+ CLIENT_PACKET.registerPacket(new EditNpcPacket());
+
+ // Client | GUI Packets
+ CLIENT_PACKET.registerPacket(new GuiClosePacket());
+ CLIENT_PACKET.registerPacket(new GuiOpenPacket());
+ CLIENT_PACKET.registerPacket(new GuiErrorPacket());
+ CLIENT_PACKET.registerPacket(new GuiDataPacket());
}
private void registerChannels() {
diff --git a/src/main/java/kamkeel/npcs/network/PacketUtil.java b/src/main/java/kamkeel/npcs/network/PacketUtil.java
index 1d677aeb4..a2f93d585 100644
--- a/src/main/java/kamkeel/npcs/network/PacketUtil.java
+++ b/src/main/java/kamkeel/npcs/network/PacketUtil.java
@@ -2,10 +2,16 @@ package kamkeel.npcs.network;
import kamkeel.npcs.network.packets.client.ChatAlertPacket;
import kamkeel.npcs.network.packets.client.AchievementPacket;
+import kamkeel.npcs.network.packets.client.gui.GuiClosePacket;
+import kamkeel.npcs.network.packets.client.gui.GuiDataPacket;
+import kamkeel.npcs.network.packets.client.gui.GuiErrorPacket;
+import kamkeel.npcs.network.packets.client.gui.GuiOpenPacket;
import kamkeel.npcs.network.packets.client.large.LargeScrollGroupPacket;
import kamkeel.npcs.network.packets.client.large.LargeScrollDataPacket;
import kamkeel.npcs.network.packets.client.large.LargeScrollListPacket;
import net.minecraft.entity.player.EntityPlayerMP;
+import net.minecraft.nbt.NBTTagCompound;
+import noppes.npcs.constants.EnumGuiType;
import java.util.List;
import java.util.Map;
@@ -36,4 +42,24 @@ public class PacketUtil {
AchievementPacket packet = new AchievementPacket(isParty, description, message);
PacketHandler.Instance.sendToPlayer(packet, playerMP);
}
+
+ public static void openGUI(EntityPlayerMP playerMP, EnumGuiType type, int x, int y, int z){
+ GuiOpenPacket packet = new GuiOpenPacket(type, x, y, z);
+ PacketHandler.Instance.sendToPlayer(packet, playerMP);
+ }
+
+ public static void closeGUI(EntityPlayerMP playerMP, int closeCode, NBTTagCompound compound){
+ GuiClosePacket packet = new GuiClosePacket(closeCode, compound);
+ PacketHandler.Instance.sendToPlayer(packet, playerMP);
+ }
+
+ public static void errorGUI(EntityPlayerMP playerMP, int closeCode, NBTTagCompound compound){
+ GuiErrorPacket packet = new GuiErrorPacket(closeCode, compound);
+ PacketHandler.Instance.sendToPlayer(packet, playerMP);
+ }
+
+ public static void sendGuiData(EntityPlayerMP playerMP, NBTTagCompound compound){
+ GuiDataPacket packet = new GuiDataPacket(compound);
+ PacketHandler.Instance.sendToPlayer(packet, playerMP);
+ }
}
diff --git a/src/main/java/kamkeel/npcs/network/enums/EnumClientPacket.java b/src/main/java/kamkeel/npcs/network/enums/EnumClientPacket.java
index 8e538163e..e6e93e6ff 100644
--- a/src/main/java/kamkeel/npcs/network/enums/EnumClientPacket.java
+++ b/src/main/java/kamkeel/npcs/network/enums/EnumClientPacket.java
@@ -32,7 +32,6 @@ public enum EnumClientPacket {
CHATBUBBLE,
SYNCRECIPES_CARPENTRYBENCH,
CLONE,
- CLONER,
TELEPORTER,
OPEN_BOOK,
CONFIG,
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/gui/ClonerGUIPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/gui/ClonerGUIPacket.java
deleted file mode 100644
index fda00a01b..000000000
--- a/src/main/java/kamkeel/npcs/network/packets/client/gui/ClonerGUIPacket.java
+++ /dev/null
@@ -1,41 +0,0 @@
-package kamkeel.npcs.network.packets.client.gui;
-
-import io.netty.buffer.ByteBuf;
-import kamkeel.npcs.network.AbstractPacket;
-import kamkeel.npcs.network.PacketChannel;
-import kamkeel.npcs.network.PacketHandler;
-import kamkeel.npcs.network.enums.EnumClientPacket;
-import net.minecraft.entity.player.EntityPlayer;
-import noppes.npcs.CustomNpcs;
-import noppes.npcs.constants.EnumGuiType;
-
-import java.io.IOException;
-
-public final class ClonerGUIPacket extends AbstractPacket {
- public static final String packetName = "Client|Cloner";
-
- public ClonerGUIPacket() {}
-
- @Override
- public Enum getType() {
- return EnumClientPacket.CLONER;
- }
-
- @Override
- public PacketChannel getChannel() {
- return PacketHandler.CLIENT_PACKET;
- }
-
- @Override
- public void sendData(ByteBuf out) throws IOException {
- // TODO: Send Packet
- }
-
- @Override
- public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- int x = in.readInt();
- int y = in.readInt();
- int z = in.readInt();
- CustomNpcs.proxy.openGui(x, y, z, EnumGuiType.MobSpawner, player);
- }
-}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiClosePacket.java b/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiClosePacket.java
index 5e3fa37ee..edfd24540 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiClosePacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiClosePacket.java
@@ -5,6 +5,7 @@ import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.enums.EnumClientPacket;
+import kamkeel.npcs.util.ByteBufUtils;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.GuiScreen;
import net.minecraft.entity.player.EntityPlayer;
@@ -17,8 +18,16 @@ import java.io.IOException;
public final class GuiClosePacket extends AbstractPacket {
public static final String packetName = "Client|GuiClose";
+ private int code;
+ private NBTTagCompound compound;
+
public GuiClosePacket() {}
+ public GuiClosePacket(int code, NBTTagCompound compound) {
+ this.code = code;
+ this.compound = compound;
+ }
+
@Override
public Enum getType() {
return EnumClientPacket.GUI_CLOSE;
@@ -31,7 +40,8 @@ public final class GuiClosePacket extends AbstractPacket {
@Override
public void sendData(ByteBuf out) throws IOException {
- // TODO: Send Packet
+ out.writeInt(code);
+ ByteBufUtils.writeNBT(out, compound);
}
@Override
@@ -39,7 +49,7 @@ public final class GuiClosePacket extends AbstractPacket {
GuiScreen gui = Minecraft.getMinecraft().currentScreen;
if (gui instanceof IGuiClose) {
int closeCode = in.readInt();
- NBTTagCompound nbt = Server.readNBT(in);
+ NBTTagCompound nbt = ByteBufUtils.readNBT(in);
((IGuiClose) gui).setClose(closeCode, nbt);
}
Minecraft.getMinecraft().displayGuiScreen(null);
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiDataPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiDataPacket.java
index 7a12d3b1a..d7f81e9bd 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiDataPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiDataPacket.java
@@ -5,6 +5,7 @@ import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.enums.EnumClientPacket;
+import kamkeel.npcs.util.ByteBufUtils;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.GuiScreen;
import net.minecraft.entity.player.EntityPlayer;
@@ -19,7 +20,13 @@ import java.io.IOException;
public final class GuiDataPacket extends AbstractPacket {
public static final String packetName = "Client|GuiData";
- public GuiDataPacket() {}
+ private NBTTagCompound compound;
+
+ public GuiDataPacket(){}
+
+ public GuiDataPacket(NBTTagCompound comp){
+ this.compound = comp;
+ }
@Override
public Enum getType() {
@@ -33,7 +40,7 @@ public final class GuiDataPacket extends AbstractPacket {
@Override
public void sendData(ByteBuf out) throws IOException {
- // TODO: Send Packet
+ ByteBufUtils.writeNBT(out, compound);
}
@Override
@@ -45,7 +52,7 @@ public final class GuiDataPacket extends AbstractPacket {
gui = (GuiScreen) ((GuiContainerNPCInterface) gui).getSubGui();
}
if (gui instanceof IGuiData) {
- NBTTagCompound nbt = Server.readNBT(in);
+ NBTTagCompound nbt = ByteBufUtils.readNBT(in);
((IGuiData) gui).setGuiData(nbt);
}
}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiErrorPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiErrorPacket.java
index e1242dca8..9dcf12367 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiErrorPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiErrorPacket.java
@@ -5,6 +5,7 @@ import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.enums.EnumClientPacket;
+import kamkeel.npcs.util.ByteBufUtils;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.GuiScreen;
import net.minecraft.entity.player.EntityPlayer;
@@ -17,8 +18,16 @@ import java.io.IOException;
public final class GuiErrorPacket extends AbstractPacket {
public static final String packetName = "Client|GuiError";
+ private int code;
+ private NBTTagCompound compound;
+
public GuiErrorPacket() {}
+ public GuiErrorPacket(int code, NBTTagCompound compound) {
+ this.code = code;
+ this.compound = compound;
+ }
+
@Override
public Enum getType() {
return EnumClientPacket.GUI_ERROR;
@@ -31,7 +40,8 @@ public final class GuiErrorPacket extends AbstractPacket {
@Override
public void sendData(ByteBuf out) throws IOException {
- // TODO: Send Packet
+ out.writeInt(code);
+ ByteBufUtils.writeNBT(out, compound);
}
@Override
@@ -39,7 +49,7 @@ public final class GuiErrorPacket extends AbstractPacket {
GuiScreen gui = Minecraft.getMinecraft().currentScreen;
if (gui instanceof IGuiError) {
int errorCode = in.readInt();
- NBTTagCompound nbt = Server.readNBT(in);
+ NBTTagCompound nbt = ByteBufUtils.readNBT(in);
((IGuiError) gui).setError(errorCode, nbt);
}
}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiOpenPacket.java
similarity index 61%
rename from src/main/java/kamkeel/npcs/network/packets/client/gui/GuiPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/gui/GuiOpenPacket.java
index 38f880b64..58aa52879 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiOpenPacket.java
@@ -1,5 +1,6 @@
package kamkeel.npcs.network.packets.client.gui;
+import cpw.mods.fml.relauncher.Side;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
@@ -11,10 +12,22 @@ import noppes.npcs.constants.EnumGuiType;
import java.io.IOException;
-public final class GuiPacket extends AbstractPacket {
- public static final String packetName = "Client|Gui";
+public final class GuiOpenPacket extends AbstractPacket {
+ public static final String packetName = "Client|OpenGui";
- public GuiPacket() {}
+ private EnumGuiType type;
+ private int x;
+ private int y;
+ private int z;
+
+ public GuiOpenPacket() {}
+
+ public GuiOpenPacket(EnumGuiType type, int x, int y, int z) {
+ this.type = type;
+ this.x = x;
+ this.y = y;
+ this.z = z;
+ }
@Override
public Enum getType() {
@@ -28,11 +41,17 @@ public final class GuiPacket extends AbstractPacket {
@Override
public void sendData(ByteBuf out) throws IOException {
- // TODO: Send Packet
+ out.writeInt(type.ordinal());
+ out.writeInt(x);
+ out.writeInt(y);
+ out.writeInt(z);
}
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ if(CustomNpcs.side() != Side.CLIENT)
+ return;
+
EnumGuiType gui = EnumGuiType.values()[in.readInt()];
int x = in.readInt();
int y = in.readInt();
diff --git a/src/main/java/noppes/npcs/NoppesUtilServer.java b/src/main/java/noppes/npcs/NoppesUtilServer.java
index 0511b4e7e..727483674 100644
--- a/src/main/java/noppes/npcs/NoppesUtilServer.java
+++ b/src/main/java/noppes/npcs/NoppesUtilServer.java
@@ -295,7 +295,7 @@ public class NoppesUtilServer {
return;
}
else{
- BOB.sendDataChecked((EntityPlayerMP)player, EnumPacketClient.GUI, gui.ordinal(), i, j, k);
+ PacketUtil.openGUI((EntityPlayerMP)player, gui, i, j, k);
}
ArrayList list = getScrollData(player, gui, npc);
if(list == null || list.isEmpty())
@@ -317,7 +317,7 @@ public class NoppesUtilServer {
return;
}
else{
- BOB.sendDataChecked((EntityPlayerMP)player, EnumPacketClient.GUI, gui.ordinal(), i, j, k);
+ PacketUtil.openGUI((EntityPlayerMP)player, gui, i, j, k);
}
ArrayList list = getScrollData(player, gui, npc);
if(list == null || list.isEmpty())
@@ -358,7 +358,7 @@ public class NoppesUtilServer {
}
return null;
}
- public static void spawnParticle(Entity entity,String particle,int dimension){
+ public static void spawnParticle(Entity entity,String particle, int dimension){
BOB.sendAssociatedData(entity, EnumPacketClient.PARTICLE, entity.posX, entity.posY, entity.posZ, entity.height, entity.width, entity.yOffset, particle);
}
@@ -673,7 +673,7 @@ public class NoppesUtilServer {
NBTTagCompound compound = option.writeNBT();
compound.setInteger("Position", pos);
- BOB.sendData((EntityPlayerMP)player, EnumPacketClient.GUI_DATA, compound);
+ PacketUtil.sendGuiData((EntityPlayerMP)player, compound);
}
}
@@ -709,7 +709,7 @@ public class NoppesUtilServer {
public static void setClonerGui(EntityPlayerMP player, int x, int y, int z){
if(player == null)
return;
- BOB.sendData(player, EnumPacketClient.CLONER, x, y, z);
+ PacketUtil.openGUI(player, EnumGuiType.Cloner, x, y, z);
}
public static void setTeleporterGUI(EntityPlayerMP player){
@@ -726,14 +726,13 @@ public class NoppesUtilServer {
ContainerManageRecipes container = (ContainerManageRecipes) player.openContainer;
container.setRecipe(recipe);
-
- BOB.sendData(player, EnumPacketClient.GUI_DATA, recipe.writeNBT());
+ PacketUtil.sendGuiData((EntityPlayerMP)player, recipe.writeNBT());
}
public static void sendBank(EntityPlayerMP player,Bank bank) {
NBTTagCompound compound = new NBTTagCompound();
bank.writeEntityToNBT(compound);
- BOB.sendData(player, EnumPacketClient.GUI_DATA, compound);
+ PacketUtil.sendGuiData((EntityPlayerMP)player, compound);
if(player.openContainer instanceof ContainerManageBanks){
((ContainerManageBanks)player.openContainer).setBank(bank);
@@ -759,14 +758,14 @@ public class NoppesUtilServer {
}
public static void sendGuiError(EntityPlayer player, int i) {
- BOB.sendData((EntityPlayerMP)player, EnumPacketClient.GUI_ERROR, i, new NBTTagCompound());
+ PacketUtil.errorGUI((EntityPlayerMP)player, i, new NBTTagCompound());
}
public static void sendGuiClose(EntityPlayerMP player, int i, NBTTagCompound comp) {
if(player.openContainer != player.inventoryContainer){
player.openContainer = player.inventoryContainer;
}
- BOB.sendData(player, EnumPacketClient.GUI_CLOSE, i, comp);
+ PacketUtil.closeGUI(player, i, comp);
}
public static Entity spawnCloneWithProtection(NBTTagCompound compound, int x, int y,
diff --git a/src/main/java/noppes/npcs/PacketHandlerServer.java b/src/main/java/noppes/npcs/PacketHandlerServer.java
index ac713f384..7b5f99866 100644
--- a/src/main/java/noppes/npcs/PacketHandlerServer.java
+++ b/src/main/java/noppes/npcs/PacketHandlerServer.java
@@ -672,7 +672,7 @@ public class PacketHandlerServer{
List list = new ArrayList();
for(LinkedData data : LinkedNpcController.Instance.list)
list.add(data.name);
- Server.sendData((EntityPlayerMP)player, EnumPacketClient.SCROLL_LIST, list);
+ PacketUtil.sendList((EntityPlayerMP)player, list);
}
else if(type == EnumPacketServer.LinkedRemove){
LinkedNpcController.Instance.removeData(Server.readString(buffer));
@@ -680,13 +680,13 @@ public class PacketHandlerServer{
List list = new ArrayList();
for(LinkedData data : LinkedNpcController.Instance.list)
list.add(data.name);
- Server.sendData((EntityPlayerMP)player, EnumPacketClient.SCROLL_LIST, list);
+ PacketUtil.sendList((EntityPlayerMP)player, list);
}
else if(type == EnumPacketServer.LinkedGetAll){
List list = new ArrayList();
for(LinkedData data : LinkedNpcController.Instance.list)
list.add(data.name);
- Server.sendData(player, EnumPacketClient.SCROLL_LIST, list);
+ PacketUtil.sendList((EntityPlayerMP)player, list);
if(npc != null)
Server.sendData(player, EnumPacketClient.SCROLL_SELECTED, npc.linkedName);
}
diff --git a/src/main/java/noppes/npcs/client/ClientProxy.java b/src/main/java/noppes/npcs/client/ClientProxy.java
index 373d52081..ec70a949f 100644
--- a/src/main/java/noppes/npcs/client/ClientProxy.java
+++ b/src/main/java/noppes/npcs/client/ClientProxy.java
@@ -365,7 +365,7 @@ public class ClientProxy extends CommonProxy {
else if (gui == EnumGuiType.RedstoneBlock)
return new GuiNpcRedstoneBlock(x, y, z);
- else if(gui == EnumGuiType.MobSpawner)
+ else if(gui == EnumGuiType.Cloner)
return new GuiNpcMobSpawner(x, y, z);
else if(gui == EnumGuiType.MobSpawnerMounter)
diff --git a/src/main/java/noppes/npcs/client/PacketHandlerClient.java b/src/main/java/noppes/npcs/client/PacketHandlerClient.java
index 657fbf12b..6d669008f 100644
--- a/src/main/java/noppes/npcs/client/PacketHandlerClient.java
+++ b/src/main/java/noppes/npcs/client/PacketHandlerClient.java
@@ -1,22 +1,17 @@
package noppes.npcs.client;
-import cpw.mods.fml.common.ObfuscationReflectionHelper;
import cpw.mods.fml.common.eventhandler.SubscribeEvent;
import cpw.mods.fml.common.network.FMLNetworkEvent.ClientCustomPacketEvent;
import io.netty.buffer.ByteBuf;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.GuiScreen;
-import net.minecraft.client.gui.achievement.GuiAchievement;
import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer;
-import net.minecraft.init.Items;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.nbt.NBTTagList;
import net.minecraft.network.PacketBuffer;
-import net.minecraft.stats.Achievement;
import net.minecraft.util.ChatComponentTranslation;
-import net.minecraft.util.StatCollector;
import net.minecraft.village.MerchantRecipeList;
import noppes.npcs.*;
import noppes.npcs.client.ClientProxy.FontContainer;
@@ -169,7 +164,7 @@ public class PacketHandlerClient extends PacketHandlerServer{
int x = buffer.readInt();
int y = buffer.readInt();
int z = buffer.readInt();
- CustomNpcs.proxy.openGui(x, y, z, EnumGuiType.MobSpawner, player);
+ CustomNpcs.proxy.openGui(x, y, z, EnumGuiType.Cloner, player);
}
else if(type == EnumPacketClient.TELEPORTER){
CustomNpcs.proxy.openGui((EntityNPCInterface)null,EnumGuiType.NpcDimensions);
diff --git a/src/main/java/noppes/npcs/constants/EnumGuiType.java b/src/main/java/noppes/npcs/constants/EnumGuiType.java
index 7d356220e..5b028c886 100644
--- a/src/main/java/noppes/npcs/constants/EnumGuiType.java
+++ b/src/main/java/noppes/npcs/constants/EnumGuiType.java
@@ -23,7 +23,7 @@ public enum EnumGuiType {
SetupTransporter,
ManageTransport,
ManageBanks,
- MobSpawner,
+ Cloner,
SetupBank,
ManageDialogs,
ManageQuests,
From 29f9774d1f98f496c49b7e7c521fc415d8bbc394 Mon Sep 17 00:00:00 2001
From: Kam
Date: Wed, 29 Jan 2025 23:33:35 -0500
Subject: [PATCH 020/357] WE KEEPPPP ON GOING
---
.../kamkeel/npcs/network/PacketHandler.java | 25 ++++++++-------
.../packets/client/ParticlePacket.java | 31 ++++++++++++++++++-
.../client/ScriptedParticlePacket.java | 10 +++++-
...ClonerPacket.java => GuiClonerPacket.java} | 16 ++++++----
.../GuiTeleporterPacket.java} | 12 +++----
.../client/{ => gui}/OpenBookPacket.java | 2 +-
.../client/{ => npc}/DeleteNpcPacket.java | 10 ++++--
.../client/{ => npc}/EditNpcPacket.java | 2 +-
.../client/{ => npc}/UpdateNpcPacket.java | 2 +-
.../java/noppes/npcs/NoppesUtilServer.java | 19 ++++++------
.../npcs/client/PacketHandlerClient.java | 12 -------
.../npcs/constants/EnumPacketClient.java | 2 --
12 files changed, 88 insertions(+), 55 deletions(-)
rename src/main/java/kamkeel/npcs/network/packets/client/gui/{GUIClonerPacket.java => GuiClonerPacket.java} (75%)
rename src/main/java/kamkeel/npcs/network/packets/client/{TeleporterPacket.java => gui/GuiTeleporterPacket.java} (71%)
rename src/main/java/kamkeel/npcs/network/packets/client/{ => gui}/OpenBookPacket.java (96%)
rename src/main/java/kamkeel/npcs/network/packets/client/{ => npc}/DeleteNpcPacket.java (86%)
rename src/main/java/kamkeel/npcs/network/packets/client/{ => npc}/EditNpcPacket.java (96%)
rename src/main/java/kamkeel/npcs/network/packets/client/{ => npc}/UpdateNpcPacket.java (96%)
diff --git a/src/main/java/kamkeel/npcs/network/PacketHandler.java b/src/main/java/kamkeel/npcs/network/PacketHandler.java
index b80ec1480..1265552c7 100644
--- a/src/main/java/kamkeel/npcs/network/PacketHandler.java
+++ b/src/main/java/kamkeel/npcs/network/PacketHandler.java
@@ -6,29 +6,22 @@ import cpw.mods.fml.common.network.FMLNetworkEvent;
import cpw.mods.fml.common.network.NetworkRegistry;
import cpw.mods.fml.common.network.internal.FMLProxyPacket;
import io.netty.buffer.ByteBuf;
-import io.netty.buffer.Unpooled;
import kamkeel.npcs.network.enums.EnumPacketType;
-import kamkeel.npcs.network.packets.client.AchievementPacket;
-import kamkeel.npcs.network.packets.client.ChatAlertPacket;
-import kamkeel.npcs.network.packets.client.ChatBubblePacket;
-import kamkeel.npcs.network.packets.client.EditNpcPacket;
-import kamkeel.npcs.network.packets.client.gui.GuiClosePacket;
-import kamkeel.npcs.network.packets.client.gui.GuiDataPacket;
-import kamkeel.npcs.network.packets.client.gui.GuiErrorPacket;
-import kamkeel.npcs.network.packets.client.gui.GuiOpenPacket;
+import kamkeel.npcs.network.packets.client.*;
+import kamkeel.npcs.network.packets.client.gui.*;
import kamkeel.npcs.network.packets.client.large.LargeScrollDataPacket;
import kamkeel.npcs.network.packets.client.large.LargeScrollGroupPacket;
import kamkeel.npcs.network.packets.client.large.LargeScrollListPacket;
import kamkeel.npcs.network.packets.client.large.sync.LargeSyncPacket;
+import kamkeel.npcs.network.packets.client.npc.DeleteNpcPacket;
+import kamkeel.npcs.network.packets.client.npc.EditNpcPacket;
import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.network.NetHandlerPlayServer;
import noppes.npcs.CustomNpcs;
import noppes.npcs.LogWriter;
-import noppes.npcs.constants.EnumPacketClient;
-import java.io.IOException;
import java.util.*;
public final class PacketHandler {
@@ -63,12 +56,22 @@ public final class PacketHandler {
CLIENT_PACKET.registerPacket(new ChatAlertPacket());
CLIENT_PACKET.registerPacket(new AchievementPacket());
CLIENT_PACKET.registerPacket(new EditNpcPacket());
+ CLIENT_PACKET.registerPacket(new RolePacket());
+ CLIENT_PACKET.registerPacket(new GuiTeleporterPacket());
// Client | GUI Packets
CLIENT_PACKET.registerPacket(new GuiClosePacket());
CLIENT_PACKET.registerPacket(new GuiOpenPacket());
CLIENT_PACKET.registerPacket(new GuiErrorPacket());
CLIENT_PACKET.registerPacket(new GuiDataPacket());
+ CLIENT_PACKET.registerPacket(new GuiClonerPacket());
+
+ // Client | NPC Packets
+ CLIENT_PACKET.registerPacket(new DeleteNpcPacket());
+
+ // Client | Other
+ CLIENT_PACKET.registerPacket(new ParticlePacket());
+ CLIENT_PACKET.registerPacket(new ScriptedParticlePacket());
}
private void registerChannels() {
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/ParticlePacket.java b/src/main/java/kamkeel/npcs/network/packets/client/ParticlePacket.java
index 1e7c4f6a0..2265eb3b3 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/ParticlePacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/ParticlePacket.java
@@ -5,6 +5,7 @@ import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.enums.EnumClientPacket;
+import kamkeel.npcs.util.ByteBufUtils;
import net.minecraft.entity.player.EntityPlayer;
import noppes.npcs.client.NoppesUtil;
@@ -13,8 +14,28 @@ import java.io.IOException;
public final class ParticlePacket extends AbstractPacket {
public static final String packetName = "Client|Particle";
+ private double x;
+ private double y;
+ private double z;
+
+ private float height;
+ private float width;
+ private float yOffset;
+
+ private String particle;
+
public ParticlePacket() {}
+ public ParticlePacket(double x, double y, double z, float height, float width, float yOffset, String particle) {
+ this.x = x;
+ this.y = y;
+ this.z = z;
+ this.height = height;
+ this.width = width;
+ this.yOffset = yOffset;
+ this.particle = particle;
+ }
+
@Override
public Enum getType() {
return EnumClientPacket.PARTICLE;
@@ -27,7 +48,15 @@ public final class ParticlePacket extends AbstractPacket {
@Override
public void sendData(ByteBuf out) throws IOException {
- // TODO: Send Packet
+ out.writeDouble(x);
+ out.writeDouble(y);
+ out.writeDouble(z);
+
+ out.writeFloat(height);
+ out.writeFloat(width);
+ out.writeFloat(yOffset);
+
+ ByteBufUtils.writeString(out, particle);
}
@Override
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/ScriptedParticlePacket.java b/src/main/java/kamkeel/npcs/network/packets/client/ScriptedParticlePacket.java
index c89c4c352..d8d2c1878 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/ScriptedParticlePacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/ScriptedParticlePacket.java
@@ -5,7 +5,9 @@ import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.enums.EnumClientPacket;
+import kamkeel.npcs.util.ByteBufUtils;
import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.nbt.NBTTagCompound;
import noppes.npcs.client.NoppesUtil;
import java.io.IOException;
@@ -13,8 +15,14 @@ import java.io.IOException;
public final class ScriptedParticlePacket extends AbstractPacket {
public static final String packetName = "Client|ScriptedParticle";
+ private NBTTagCompound compound;
+
public ScriptedParticlePacket() {}
+ public ScriptedParticlePacket(NBTTagCompound compound) {
+ this.compound = compound;
+ }
+
@Override
public Enum getType() {
return EnumClientPacket.SCRIPTED_PARTICLE;
@@ -27,7 +35,7 @@ public final class ScriptedParticlePacket extends AbstractPacket {
@Override
public void sendData(ByteBuf out) throws IOException {
- // TODO: Send Packet
+ ByteBufUtils.writeNBT(out, compound);
}
@Override
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/gui/GUIClonerPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiClonerPacket.java
similarity index 75%
rename from src/main/java/kamkeel/npcs/network/packets/client/gui/GUIClonerPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/gui/GuiClonerPacket.java
index e7d26d066..3e3004f28 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/gui/GUIClonerPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiClonerPacket.java
@@ -6,21 +6,25 @@ import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.enums.EnumClientPacket;
+import kamkeel.npcs.util.ByteBufUtils;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.nbt.NBTTagCompound;
import noppes.npcs.CustomNpcs;
-import noppes.npcs.Server;
import noppes.npcs.client.NoppesUtil;
import noppes.npcs.client.gui.GuiNpcMobSpawnerAdd;
import java.io.IOException;
-public final class GUIClonerPacket extends AbstractPacket {
+public final class GuiClonerPacket extends AbstractPacket {
public static final String packetName = "Client|Clone";
- public GUIClonerPacket() {}
+ private NBTTagCompound compound;
- public GUIClonerPacket(boolean ok) {}
+ public GuiClonerPacket() {}
+
+ public GuiClonerPacket(NBTTagCompound comp){
+ this.compound = comp;
+ }
@Override
public Enum getType() {
@@ -34,14 +38,14 @@ public final class GUIClonerPacket extends AbstractPacket {
@Override
public void sendData(ByteBuf out) throws IOException {
- // TODO: Send Packet
+ ByteBufUtils.writeNBT(out, compound);
}
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
if(CustomNpcs.side() != Side.CLIENT)
return;
- NBTTagCompound nbt = Server.readNBT(in);
+ NBTTagCompound nbt = ByteBufUtils.readNBT(in);
NoppesUtil.openGUI(player, new GuiNpcMobSpawnerAdd(nbt));
}
}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/TeleporterPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiTeleporterPacket.java
similarity index 71%
rename from src/main/java/kamkeel/npcs/network/packets/client/TeleporterPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/gui/GuiTeleporterPacket.java
index 1063f703e..b9df7dd7c 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/TeleporterPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiTeleporterPacket.java
@@ -1,4 +1,4 @@
-package kamkeel.npcs.network.packets.client;
+package kamkeel.npcs.network.packets.client.gui;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
@@ -12,10 +12,10 @@ import noppes.npcs.entity.EntityNPCInterface;
import java.io.IOException;
-public final class TeleporterPacket extends AbstractPacket {
+public final class GuiTeleporterPacket extends AbstractPacket {
public static final String packetName = "Client|Teleporter";
- public TeleporterPacket() {}
+ public GuiTeleporterPacket(){}
@Override
public Enum getType() {
@@ -28,12 +28,10 @@ public final class TeleporterPacket extends AbstractPacket {
}
@Override
- public void sendData(ByteBuf out) throws IOException {
- // TODO: Send Packet
- }
+ public void sendData(ByteBuf out) throws IOException {}
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- CustomNpcs.proxy.openGui((EntityNPCInterface)null,EnumGuiType.NpcDimensions);
+ CustomNpcs.proxy.openGui((EntityNPCInterface)null, EnumGuiType.NpcDimensions);
}
}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/OpenBookPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/gui/OpenBookPacket.java
similarity index 96%
rename from src/main/java/kamkeel/npcs/network/packets/client/OpenBookPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/gui/OpenBookPacket.java
index 1028896bd..864b8d8e3 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/OpenBookPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/gui/OpenBookPacket.java
@@ -1,4 +1,4 @@
-package kamkeel.npcs.network.packets.client;
+package kamkeel.npcs.network.packets.client.gui;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/DeleteNpcPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/npc/DeleteNpcPacket.java
similarity index 86%
rename from src/main/java/kamkeel/npcs/network/packets/client/DeleteNpcPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/npc/DeleteNpcPacket.java
index 24b167de8..738a3c91a 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/DeleteNpcPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/npc/DeleteNpcPacket.java
@@ -1,4 +1,4 @@
-package kamkeel.npcs.network.packets.client;
+package kamkeel.npcs.network.packets.client.npc;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
@@ -15,8 +15,14 @@ import java.io.IOException;
public final class DeleteNpcPacket extends AbstractPacket {
public static final String packetName = "Client|DeleteNpc";
+ private int entityId;
+
public DeleteNpcPacket() {}
+ public DeleteNpcPacket(int id){
+ this.entityId = id;
+ }
+
@Override
public Enum getType() {
return EnumClientPacket.DELETE_NPC;
@@ -29,7 +35,7 @@ public final class DeleteNpcPacket extends AbstractPacket {
@Override
public void sendData(ByteBuf out) throws IOException {
- // TODO: Send Packet
+ out.writeInt(this.entityId);
}
@Override
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/EditNpcPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/npc/EditNpcPacket.java
similarity index 96%
rename from src/main/java/kamkeel/npcs/network/packets/client/EditNpcPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/npc/EditNpcPacket.java
index cbac6a98c..9e2b8fa83 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/EditNpcPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/npc/EditNpcPacket.java
@@ -1,4 +1,4 @@
-package kamkeel.npcs.network.packets.client;
+package kamkeel.npcs.network.packets.client.npc;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/UpdateNpcPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/npc/UpdateNpcPacket.java
similarity index 96%
rename from src/main/java/kamkeel/npcs/network/packets/client/UpdateNpcPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/npc/UpdateNpcPacket.java
index 05edb23e0..916db40fa 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/UpdateNpcPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/npc/UpdateNpcPacket.java
@@ -1,4 +1,4 @@
-package kamkeel.npcs.network.packets.client;
+package kamkeel.npcs.network.packets.client.npc;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
diff --git a/src/main/java/noppes/npcs/NoppesUtilServer.java b/src/main/java/noppes/npcs/NoppesUtilServer.java
index 727483674..04b46d069 100644
--- a/src/main/java/noppes/npcs/NoppesUtilServer.java
+++ b/src/main/java/noppes/npcs/NoppesUtilServer.java
@@ -5,8 +5,12 @@ import kamkeel.npcs.controllers.SyncMaster;
import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.PacketUtil;
import kamkeel.npcs.network.packets.client.DialogPacket;
-import kamkeel.npcs.network.packets.client.EditNpcPacket;
+import kamkeel.npcs.network.packets.client.ParticlePacket;
+import kamkeel.npcs.network.packets.client.ScriptedParticlePacket;
+import kamkeel.npcs.network.packets.client.npc.DeleteNpcPacket;
+import kamkeel.npcs.network.packets.client.npc.EditNpcPacket;
import kamkeel.npcs.network.packets.client.RolePacket;
+import kamkeel.npcs.network.packets.client.gui.GuiTeleporterPacket;
import kamkeel.npcs.util.ByteBufUtils;
import net.minecraft.command.server.CommandBlockLogic;
import net.minecraft.entity.Entity;
@@ -359,16 +363,11 @@ public class NoppesUtilServer {
return null;
}
public static void spawnParticle(Entity entity,String particle, int dimension){
- BOB.sendAssociatedData(entity, EnumPacketClient.PARTICLE, entity.posX, entity.posY, entity.posZ, entity.height, entity.width, entity.yOffset, particle);
+ PacketHandler.Instance.sendTracking(new ParticlePacket(entity.posX, entity.posY, entity.posZ, entity.height, entity.width, entity.yOffset, particle), entity);
}
public static void spawnScriptedParticle(NBTTagCompound compound, int dimensionId){
- List list = MinecraftServer.getServer().getConfigurationManager().playerEntityList;
- for (EntityPlayer player : list) {
- if (player.worldObj.provider.dimensionId == dimensionId) {
- BOB.sendData((EntityPlayerMP) player, EnumPacketClient.SCRIPTED_PARTICLE, compound);
- }
- }
+ PacketHandler.Instance.sendToDimension(new ScriptedParticlePacket(compound), dimensionId);
}
public static void playSound(int id, ScriptSound sound) {
@@ -414,7 +413,7 @@ public class NoppesUtilServer {
}
public static void deleteNpc(EntityNPCInterface npc,EntityPlayer player) {
- BOB.sendAssociatedData(npc, EnumPacketClient.DELETE_NPC, npc.getEntityId());
+ PacketHandler.Instance.sendTracking(new DeleteNpcPacket(npc.getEntityId()), npc);
}
public static void createMobSpawner(int x, int y, int z, NBTTagCompound comp, EntityPlayer player) {
@@ -715,7 +714,7 @@ public class NoppesUtilServer {
public static void setTeleporterGUI(EntityPlayerMP player){
if(player == null)
return;
- BOB.sendData(player, EnumPacketClient.TELEPORTER);
+ PacketHandler.Instance.sendToPlayer(new GuiTeleporterPacket(), player);
}
public static void setRecipeGui(EntityPlayerMP player, RecipeCarpentry recipe){
diff --git a/src/main/java/noppes/npcs/client/PacketHandlerClient.java b/src/main/java/noppes/npcs/client/PacketHandlerClient.java
index 6d669008f..b13f8df8b 100644
--- a/src/main/java/noppes/npcs/client/PacketHandlerClient.java
+++ b/src/main/java/noppes/npcs/client/PacketHandlerClient.java
@@ -89,12 +89,6 @@ public class PacketHandlerClient extends PacketHandlerServer{
return;
NoppesUtil.openDialog(Server.readNBT(buffer), (EntityNPCInterface) entity, player);
}
- else if(type == EnumPacketClient.DIALOG_DUMMY){
- EntityDialogNpc npc = new EntityDialogNpc(player.worldObj);
- npc.display.name = Server.readString(buffer);
- EntityUtil.Copy(player, npc);
- NoppesUtil.openDialog(Server.readNBT(buffer), npc, player);
- }
else if(type == EnumPacketClient.QUEST_COMPLETION){
NoppesUtil.guiQuestCompletion(player, Server.readNBT(buffer));
}
@@ -160,12 +154,6 @@ public class PacketHandlerClient extends PacketHandlerServer{
NBTTagCompound compound = Server.readNBT(buffer);
NoppesUtil.openGUI(player, new GuiNpcMobSpawnerAdd(compound));
}
- else if(type == EnumPacketClient.CLONER){
- int x = buffer.readInt();
- int y = buffer.readInt();
- int z = buffer.readInt();
- CustomNpcs.proxy.openGui(x, y, z, EnumGuiType.Cloner, player);
- }
else if(type == EnumPacketClient.TELEPORTER){
CustomNpcs.proxy.openGui((EntityNPCInterface)null,EnumGuiType.NpcDimensions);
}
diff --git a/src/main/java/noppes/npcs/constants/EnumPacketClient.java b/src/main/java/noppes/npcs/constants/EnumPacketClient.java
index b6b9ffa45..ec0ceb509 100644
--- a/src/main/java/noppes/npcs/constants/EnumPacketClient.java
+++ b/src/main/java/noppes/npcs/constants/EnumPacketClient.java
@@ -24,10 +24,8 @@ public enum EnumPacketClient {
VILLAGER_LIST,
SYNCRECIPES_CARPENTRYBENCH,
CLONE,
- CLONER,
TELEPORTER,
OPEN_BOOK,
- DIALOG_DUMMY,
CONFIG,
ISGUIOPEN,
SCRIPT_OVERLAY_DATA,
From 1c97d845181b27adcb5c59b6aafc7b1ce9cb3b92 Mon Sep 17 00:00:00 2001
From: Kam
Date: Wed, 29 Jan 2025 23:40:05 -0500
Subject: [PATCH 021/357] uh oh
---
.../packets/client/ConfigCommandPacket.java | 5 ++
.../network/packets/client/DialogPacket.java | 5 ++
.../client/DisableMouseInputPacket.java | 5 ++
.../packets/client/MarkDataPacket.java | 5 ++
.../client/OverlayQuestTrackingPacket.java | 5 ++
.../packets/client/ParticlePacket.java | 35 +++++++++-
.../packets/client/PartyDataPacket.java | 5 ++
.../PlayerUpdateSkinOverlaysPacket.java | 5 ++
.../packets/client/QuestCompletionPacket.java | 5 ++
.../network/packets/client/RolePacket.java | 5 ++
.../client/ScriptOverlayClosePacket.java | 5 ++
.../client/ScriptOverlayDataPacket.java | 5 ++
.../client/ScriptedParticlePacket.java | 48 +++++++++++++-
.../packets/client/ScrollSelectedPacket.java | 5 ++
.../packets/client/StopSoundForPacket.java | 5 ++
.../packets/client/StopSoundsPacket.java | 5 ++
.../packets/client/SwingPlayerArmPacket.java | 5 ++
.../client/UpdateAnimationsPacket.java | 5 ++
.../packets/client/VillagerListPacket.java | 5 ++
.../packets/client/gui/GuiClosePacket.java | 5 ++
.../packets/client/gui/GuiDataPacket.java | 5 ++
.../packets/client/gui/GuiErrorPacket.java | 5 ++
.../packets/client/gui/GuiRedstonePacket.java | 5 ++
.../client/gui/GuiTeleporterPacket.java | 4 ++
.../packets/client/gui/GuiWaypointPacket.java | 5 ++
.../packets/client/gui/IsGuiOpenPacket.java | 5 ++
.../packets/client/gui/OpenBookPacket.java | 5 ++
.../packets/client/npc/DeleteNpcPacket.java | 5 ++
.../packets/client/npc/EditNpcPacket.java | 5 ++
.../packets/client/npc/UpdateNpcPacket.java | 5 ++
.../client/sound/ContinueSoundsPacket.java | 5 ++
.../client/sound/PauseSoundsPacket.java | 5 ++
.../packets/client/sound/PlayMusicPacket.java | 5 ++
.../packets/client/sound/PlaySoundPacket.java | 5 ++
.../client/sound/PlaySoundToNoIdPacket.java | 5 ++
.../client/sound/PlaySoundToPacket.java | 5 ++
.../packets/client/sync/SyncConfigPacket.java | 5 ++
.../sync/SyncRecipesCarpentryBenchPacket.java | 5 ++
.../sync/SyncRecipesWorkbenchPacket.java | 5 ++
.../packets/client/sync/SyncWeaponPacket.java | 5 ++
.../java/noppes/npcs/client/NoppesUtil.java | 65 +------------------
.../npcs/client/PacketHandlerClient.java | 6 --
.../npcs/constants/EnumPacketClient.java | 2 -
43 files changed, 270 insertions(+), 75 deletions(-)
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/ConfigCommandPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/ConfigCommandPacket.java
index 2e030eb9e..6e41fe008 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/ConfigCommandPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/ConfigCommandPacket.java
@@ -1,11 +1,13 @@
package kamkeel.npcs.network.packets.client;
+import cpw.mods.fml.relauncher.Side;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.entity.player.EntityPlayer;
+import noppes.npcs.CustomNpcs;
import noppes.npcs.Server;
import noppes.npcs.client.ClientProxy;
import noppes.npcs.config.ConfigClient;
@@ -36,6 +38,9 @@ public final class ConfigCommandPacket extends AbstractPacket {
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ if(CustomNpcs.side() != Side.CLIENT)
+ return;
+
int configType = in.readInt();
if (configType == 0) { // Font Configuration
String font = Server.readString(in);
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/DialogPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/DialogPacket.java
index afd0e2162..1533ccad6 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/DialogPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/DialogPacket.java
@@ -1,5 +1,6 @@
package kamkeel.npcs.network.packets.client;
+import cpw.mods.fml.relauncher.Side;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
@@ -10,6 +11,7 @@ import net.minecraft.client.Minecraft;
import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.nbt.NBTTagCompound;
+import noppes.npcs.CustomNpcs;
import noppes.npcs.Server;
import noppes.npcs.client.NoppesUtil;
import noppes.npcs.entity.EntityDialogNpc;
@@ -51,6 +53,9 @@ public final class DialogPacket extends AbstractPacket {
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ if(CustomNpcs.side() != Side.CLIENT)
+ return;
+
int entityID = in.readInt();
String name = ByteBufUtils.readString(in);
NBTTagCompound tagCompound = ByteBufUtils.readNBT(in);
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/DisableMouseInputPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/DisableMouseInputPacket.java
index c2c2b4d21..6c325f803 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/DisableMouseInputPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/DisableMouseInputPacket.java
@@ -1,11 +1,13 @@
package kamkeel.npcs.network.packets.client;
+import cpw.mods.fml.relauncher.Side;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.entity.player.EntityPlayer;
+import noppes.npcs.CustomNpcs;
import noppes.npcs.Server;
import noppes.npcs.client.ClientEventHandler;
@@ -33,6 +35,9 @@ public final class DisableMouseInputPacket extends AbstractPacket {
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ if(CustomNpcs.side() != Side.CLIENT)
+ return;
+
long duration = in.readLong();
String parsedButtons = Server.readString(in);
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/MarkDataPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/MarkDataPacket.java
index 6d053a132..47df043a3 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/MarkDataPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/MarkDataPacket.java
@@ -1,5 +1,6 @@
package kamkeel.npcs.network.packets.client;
+import cpw.mods.fml.relauncher.Side;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
@@ -8,6 +9,7 @@ import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.nbt.NBTTagCompound;
+import noppes.npcs.CustomNpcs;
import noppes.npcs.Server;
import noppes.npcs.controllers.data.MarkData;
import noppes.npcs.entity.EntityNPCInterface;
@@ -36,6 +38,9 @@ public final class MarkDataPacket extends AbstractPacket {
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ if(CustomNpcs.side() != Side.CLIENT)
+ return;
+
Entity entity = player.worldObj.getEntityByID(in.readInt());
if (!(entity instanceof EntityNPCInterface)) return;
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/OverlayQuestTrackingPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/OverlayQuestTrackingPacket.java
index 46d4c1a84..cc7dca9aa 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/OverlayQuestTrackingPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/OverlayQuestTrackingPacket.java
@@ -1,5 +1,6 @@
package kamkeel.npcs.network.packets.client;
+import cpw.mods.fml.relauncher.Side;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
@@ -8,6 +9,7 @@ import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.client.Minecraft;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.nbt.NBTTagCompound;
+import noppes.npcs.CustomNpcs;
import noppes.npcs.Server;
import noppes.npcs.client.gui.OverlayQuestTracking;
import noppes.npcs.client.ClientCacheHandler;
@@ -36,6 +38,9 @@ public final class OverlayQuestTrackingPacket extends AbstractPacket {
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ if(CustomNpcs.side() != Side.CLIENT)
+ return;
+
try {
NBTTagCompound nbt = Server.readNBT(in);
ClientCacheHandler.questTrackingOverlay = new OverlayQuestTracking(Minecraft.getMinecraft());
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/ParticlePacket.java b/src/main/java/kamkeel/npcs/network/packets/client/ParticlePacket.java
index 2265eb3b3..f59f63248 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/ParticlePacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/ParticlePacket.java
@@ -1,15 +1,21 @@
package kamkeel.npcs.network.packets.client;
+import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.enums.EnumClientPacket;
import kamkeel.npcs.util.ByteBufUtils;
+import net.minecraft.client.Minecraft;
import net.minecraft.entity.player.EntityPlayer;
-import noppes.npcs.client.NoppesUtil;
+import net.minecraft.world.World;
+import noppes.npcs.CustomNpcs;
+import noppes.npcs.Server;
import java.io.IOException;
+import java.util.Random;
public final class ParticlePacket extends AbstractPacket {
public static final String packetName = "Client|Particle";
@@ -61,6 +67,31 @@ public final class ParticlePacket extends AbstractPacket {
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- NoppesUtil.spawnParticle(in);
+ if(CustomNpcs.side() != Side.CLIENT)
+ return;
+
+ spawnParticle(in);
+ }
+
+ @SideOnly(Side.CLIENT)
+ public static void spawnParticle(ByteBuf buffer) throws IOException{
+ double posX = buffer.readDouble();
+ double posY = buffer.readDouble();
+ double posZ = buffer.readDouble();
+ float height = buffer.readFloat();
+ float width = buffer.readFloat();
+ float yOffset = buffer.readFloat();
+
+ String particle = Server.readString(buffer);
+ World worldObj = Minecraft.getMinecraft().theWorld;
+
+ Random rand = worldObj.rand;
+ if(particle.equals("heal")){
+ for (int k = 0; k < 6; k++)
+ {
+ worldObj.spawnParticle("instantSpell", posX + (rand.nextDouble() - 0.5D) * (double)width, (posY + rand.nextDouble() * (double)height) - (double)yOffset, posZ + (rand.nextDouble() - 0.5D) * (double)width, 0, 0, 0);
+ worldObj.spawnParticle("spell", posX + (rand.nextDouble() - 0.5D) * (double)width, (posY + rand.nextDouble() * (double)height) - (double)yOffset, posZ + (rand.nextDouble() - 0.5D) * (double)width, 0, 0, 0);
+ }
+ }
}
}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/PartyDataPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/PartyDataPacket.java
index 4243be0da..8bfad94b8 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/PartyDataPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/PartyDataPacket.java
@@ -1,5 +1,6 @@
package kamkeel.npcs.network.packets.client;
+import cpw.mods.fml.relauncher.Side;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
@@ -9,6 +10,7 @@ import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.GuiScreen;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.nbt.NBTTagCompound;
+import noppes.npcs.CustomNpcs;
import noppes.npcs.Server;
import noppes.npcs.client.gui.util.GuiContainerNPCInterface;
import noppes.npcs.client.gui.util.GuiNPCInterface;
@@ -38,6 +40,9 @@ public final class PartyDataPacket extends AbstractPacket {
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ if(CustomNpcs.side() != Side.CLIENT)
+ return;
+
GuiScreen gui = Minecraft.getMinecraft().currentScreen;
if (gui instanceof GuiNPCInterface && ((GuiNPCInterface) gui).hasSubGui()) {
gui = (GuiScreen) ((GuiNPCInterface) gui).getSubGui();
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/PlayerUpdateSkinOverlaysPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/PlayerUpdateSkinOverlaysPacket.java
index a61e06ad5..d8537f1a2 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/PlayerUpdateSkinOverlaysPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/PlayerUpdateSkinOverlaysPacket.java
@@ -1,5 +1,6 @@
package kamkeel.npcs.network.packets.client;
+import cpw.mods.fml.relauncher.Side;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
@@ -8,6 +9,7 @@ import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.client.Minecraft;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.nbt.NBTTagCompound;
+import noppes.npcs.CustomNpcs;
import noppes.npcs.Server;
import noppes.npcs.client.NoppesUtil;
@@ -35,6 +37,9 @@ public final class PlayerUpdateSkinOverlaysPacket extends AbstractPacket {
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ if(CustomNpcs.side() != Side.CLIENT)
+ return;
+
String playerName = Server.readString(in);
NBTTagCompound nbt = Server.readNBT(in);
EntityPlayer sendingPlayer = Minecraft.getMinecraft().theWorld.getPlayerEntityByName(playerName);
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/QuestCompletionPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/QuestCompletionPacket.java
index ab1928890..62db8e592 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/QuestCompletionPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/QuestCompletionPacket.java
@@ -1,11 +1,13 @@
package kamkeel.npcs.network.packets.client;
+import cpw.mods.fml.relauncher.Side;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.entity.player.EntityPlayer;
+import noppes.npcs.CustomNpcs;
import noppes.npcs.Server;
import noppes.npcs.client.NoppesUtil;
@@ -33,6 +35,9 @@ public final class QuestCompletionPacket extends AbstractPacket {
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ if(CustomNpcs.side() != Side.CLIENT)
+ return;
+
NoppesUtil.guiQuestCompletion(player, Server.readNBT(in));
}
}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/RolePacket.java b/src/main/java/kamkeel/npcs/network/packets/client/RolePacket.java
index 1fa8fcb2f..801a6efb3 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/RolePacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/RolePacket.java
@@ -1,5 +1,6 @@
package kamkeel.npcs.network.packets.client;
+import cpw.mods.fml.relauncher.Side;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
@@ -10,6 +11,7 @@ import net.minecraft.client.Minecraft;
import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.nbt.NBTTagCompound;
+import noppes.npcs.CustomNpcs;
import noppes.npcs.Server;
import noppes.npcs.client.NoppesUtil;
import noppes.npcs.entity.EntityNPCInterface;
@@ -44,6 +46,9 @@ public final class RolePacket extends AbstractPacket {
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ if(CustomNpcs.side() != Side.CLIENT)
+ return;
+
NBTTagCompound compound = ByteBufUtils.readNBT(in);
Entity entity = Minecraft.getMinecraft().theWorld.getEntityByID(compound.getInteger("EntityId"));
if (entity instanceof EntityNPCInterface) {
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/ScriptOverlayClosePacket.java b/src/main/java/kamkeel/npcs/network/packets/client/ScriptOverlayClosePacket.java
index 3181e3749..7215684e7 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/ScriptOverlayClosePacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/ScriptOverlayClosePacket.java
@@ -1,11 +1,13 @@
package kamkeel.npcs.network.packets.client;
+import cpw.mods.fml.relauncher.Side;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.entity.player.EntityPlayer;
+import noppes.npcs.CustomNpcs;
import noppes.npcs.client.ClientCacheHandler;
import java.io.IOException;
@@ -32,6 +34,9 @@ public final class ScriptOverlayClosePacket extends AbstractPacket {
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ if(CustomNpcs.side() != Side.CLIENT)
+ return;
+
int overlayId = in.readInt();
ClientCacheHandler.customOverlays.remove(overlayId);
}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/ScriptOverlayDataPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/ScriptOverlayDataPacket.java
index a3979c5fb..7e9680584 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/ScriptOverlayDataPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/ScriptOverlayDataPacket.java
@@ -1,5 +1,6 @@
package kamkeel.npcs.network.packets.client;
+import cpw.mods.fml.relauncher.Side;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
@@ -7,6 +8,7 @@ import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.client.Minecraft;
import net.minecraft.entity.player.EntityPlayer;
+import noppes.npcs.CustomNpcs;
import noppes.npcs.Server;
import noppes.npcs.client.gui.customoverlay.OverlayCustom;
import noppes.npcs.client.ClientCacheHandler;
@@ -35,6 +37,9 @@ public final class ScriptOverlayDataPacket extends AbstractPacket {
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ if(CustomNpcs.side() != Side.CLIENT)
+ return;
+
OverlayCustom overlayCustom = new OverlayCustom(Minecraft.getMinecraft());
overlayCustom.setOverlayData(Server.readNBT(in));
ClientCacheHandler.customOverlays.put(overlayCustom.overlay.getID(), overlayCustom);
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/ScriptedParticlePacket.java b/src/main/java/kamkeel/npcs/network/packets/client/ScriptedParticlePacket.java
index d8d2c1878..07c60cba5 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/ScriptedParticlePacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/ScriptedParticlePacket.java
@@ -1,14 +1,22 @@
package kamkeel.npcs.network.packets.client;
+import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.enums.EnumClientPacket;
import kamkeel.npcs.util.ByteBufUtils;
+import net.minecraft.client.Minecraft;
+import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.nbt.NBTTagCompound;
-import noppes.npcs.client.NoppesUtil;
+import net.minecraft.world.World;
+import noppes.npcs.CustomNpcs;
+import noppes.npcs.Server;
+import noppes.npcs.client.fx.CustomFX;
+import noppes.npcs.scripted.ScriptParticle;
import java.io.IOException;
@@ -40,6 +48,42 @@ public final class ScriptedParticlePacket extends AbstractPacket {
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- NoppesUtil.spawnScriptedParticle(player, in);
+ if(CustomNpcs.side() != Side.CLIENT)
+ return;
+
+ spawnScriptedParticle(player, in);
+ }
+
+ @SideOnly(Side.CLIENT)
+ public static void spawnScriptedParticle(EntityPlayer player, ByteBuf buffer){
+ Minecraft minecraft = Minecraft.getMinecraft();
+
+ NBTTagCompound compound;
+ ScriptParticle particle;
+ try {
+ compound = Server.readNBT(buffer);
+ particle = ScriptParticle.fromNBT(compound);
+ } catch (IOException ignored) {
+ return;
+ }
+
+ World worldObj = player.worldObj;
+ if (worldObj == null) {
+ return;
+ }
+
+ Entity entity = null;
+ if (compound.hasKey("EntityID")) {
+ entity = worldObj.getEntityByID(compound.getInteger("EntityID"));
+ if (entity != null)
+ worldObj = entity.worldObj;
+ else return;
+ }
+
+ CustomFX fx = CustomFX.fromScriptedParticle(particle, worldObj, entity);
+
+ for(int i = 0; i < particle.amount; i++){
+ minecraft.effectRenderer.addEffect(fx);
+ }
}
}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/ScrollSelectedPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/ScrollSelectedPacket.java
index 381b7107a..7a5750051 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/ScrollSelectedPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/ScrollSelectedPacket.java
@@ -1,5 +1,6 @@
package kamkeel.npcs.network.packets.client;
+import cpw.mods.fml.relauncher.Side;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
@@ -8,6 +9,7 @@ import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.GuiScreen;
import net.minecraft.entity.player.EntityPlayer;
+import noppes.npcs.CustomNpcs;
import noppes.npcs.Server;
import noppes.npcs.client.gui.util.IScrollData;
@@ -35,6 +37,9 @@ public final class ScrollSelectedPacket extends AbstractPacket {
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ if(CustomNpcs.side() != Side.CLIENT)
+ return;
+
GuiScreen gui = Minecraft.getMinecraft().currentScreen;
if (gui instanceof IScrollData) {
String selected = Server.readString(in);
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/StopSoundForPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/StopSoundForPacket.java
index d936f2971..d2de64a97 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/StopSoundForPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/StopSoundForPacket.java
@@ -1,11 +1,13 @@
package kamkeel.npcs.network.packets.client;
+import cpw.mods.fml.relauncher.Side;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.entity.player.EntityPlayer;
+import noppes.npcs.CustomNpcs;
import noppes.npcs.client.controllers.ScriptSoundController;
import java.io.IOException;
@@ -32,6 +34,9 @@ public final class StopSoundForPacket extends AbstractPacket {
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ if(CustomNpcs.side() != Side.CLIENT)
+ return;
+
int soundId = in.readInt();
ScriptSoundController.Instance.stopSound(soundId);
}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/StopSoundsPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/StopSoundsPacket.java
index 1abedb3be..07920a16c 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/StopSoundsPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/StopSoundsPacket.java
@@ -1,11 +1,13 @@
package kamkeel.npcs.network.packets.client;
+import cpw.mods.fml.relauncher.Side;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.entity.player.EntityPlayer;
+import noppes.npcs.CustomNpcs;
import noppes.npcs.client.controllers.ScriptSoundController;
import java.io.IOException;
@@ -32,6 +34,9 @@ public final class StopSoundsPacket extends AbstractPacket {
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ if(CustomNpcs.side() != Side.CLIENT)
+ return;
+
ScriptSoundController.Instance.stopAllSounds();
}
}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/SwingPlayerArmPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/SwingPlayerArmPacket.java
index cdc6eaae8..05ba2a996 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/SwingPlayerArmPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/SwingPlayerArmPacket.java
@@ -1,5 +1,6 @@
package kamkeel.npcs.network.packets.client;
+import cpw.mods.fml.relauncher.Side;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
@@ -7,6 +8,7 @@ import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.client.Minecraft;
import net.minecraft.entity.player.EntityPlayer;
+import noppes.npcs.CustomNpcs;
import java.io.IOException;
@@ -32,6 +34,9 @@ public final class SwingPlayerArmPacket extends AbstractPacket {
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ if(CustomNpcs.side() != Side.CLIENT)
+ return;
+
Minecraft.getMinecraft().thePlayer.swingItem();
}
}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/UpdateAnimationsPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/UpdateAnimationsPacket.java
index 91399cc74..5776abd9b 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/UpdateAnimationsPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/UpdateAnimationsPacket.java
@@ -1,5 +1,6 @@
package kamkeel.npcs.network.packets.client;
+import cpw.mods.fml.relauncher.Side;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
@@ -9,6 +10,7 @@ import net.minecraft.client.Minecraft;
import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.nbt.NBTTagCompound;
+import noppes.npcs.CustomNpcs;
import noppes.npcs.Server;
import noppes.npcs.client.ClientCacheHandler;
import noppes.npcs.controllers.data.Animation;
@@ -39,6 +41,9 @@ public final class UpdateAnimationsPacket extends AbstractPacket {
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ if(CustomNpcs.side() != Side.CLIENT)
+ return;
+
NBTTagCompound nbt = Server.readNBT(in);
AnimationData animationData = null;
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/VillagerListPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/VillagerListPacket.java
index 202604664..d9d437155 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/VillagerListPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/VillagerListPacket.java
@@ -1,5 +1,6 @@
package kamkeel.npcs.network.packets.client;
+import cpw.mods.fml.relauncher.Side;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
@@ -7,6 +8,7 @@ import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.network.PacketBuffer;
+import noppes.npcs.CustomNpcs;
import noppes.npcs.ServerEventsHandler;
import net.minecraft.village.MerchantRecipeList;
@@ -34,6 +36,9 @@ public final class VillagerListPacket extends AbstractPacket {
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ if(CustomNpcs.side() != Side.CLIENT)
+ return;
+
MerchantRecipeList recipes = MerchantRecipeList.func_151390_b(new PacketBuffer(in));
ServerEventsHandler.Merchant.setRecipes(recipes);
}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiClosePacket.java b/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiClosePacket.java
index edfd24540..515f7acb0 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiClosePacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiClosePacket.java
@@ -1,5 +1,6 @@
package kamkeel.npcs.network.packets.client.gui;
+import cpw.mods.fml.relauncher.Side;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
@@ -10,6 +11,7 @@ import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.GuiScreen;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.nbt.NBTTagCompound;
+import noppes.npcs.CustomNpcs;
import noppes.npcs.Server;
import noppes.npcs.client.gui.util.IGuiClose;
@@ -46,6 +48,9 @@ public final class GuiClosePacket extends AbstractPacket {
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ if(CustomNpcs.side() != Side.CLIENT)
+ return;
+
GuiScreen gui = Minecraft.getMinecraft().currentScreen;
if (gui instanceof IGuiClose) {
int closeCode = in.readInt();
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiDataPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiDataPacket.java
index d7f81e9bd..cd10c94dc 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiDataPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiDataPacket.java
@@ -1,5 +1,6 @@
package kamkeel.npcs.network.packets.client.gui;
+import cpw.mods.fml.relauncher.Side;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
@@ -10,6 +11,7 @@ import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.GuiScreen;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.nbt.NBTTagCompound;
+import noppes.npcs.CustomNpcs;
import noppes.npcs.Server;
import noppes.npcs.client.gui.util.GuiContainerNPCInterface;
import noppes.npcs.client.gui.util.GuiNPCInterface;
@@ -45,6 +47,9 @@ public final class GuiDataPacket extends AbstractPacket {
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ if(CustomNpcs.side() != Side.CLIENT)
+ return;
+
GuiScreen gui = Minecraft.getMinecraft().currentScreen;
if (gui instanceof GuiNPCInterface && ((GuiNPCInterface) gui).hasSubGui()) {
gui = (GuiScreen) ((GuiNPCInterface) gui).getSubGui();
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiErrorPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiErrorPacket.java
index 9dcf12367..1f1593b00 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiErrorPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiErrorPacket.java
@@ -1,5 +1,6 @@
package kamkeel.npcs.network.packets.client.gui;
+import cpw.mods.fml.relauncher.Side;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
@@ -10,6 +11,7 @@ import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.GuiScreen;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.nbt.NBTTagCompound;
+import noppes.npcs.CustomNpcs;
import noppes.npcs.Server;
import noppes.npcs.client.gui.util.IGuiError;
@@ -46,6 +48,9 @@ public final class GuiErrorPacket extends AbstractPacket {
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ if(CustomNpcs.side() != Side.CLIENT)
+ return;
+
GuiScreen gui = Minecraft.getMinecraft().currentScreen;
if (gui instanceof IGuiError) {
int errorCode = in.readInt();
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiRedstonePacket.java b/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiRedstonePacket.java
index 4116e7eed..b96c8a19d 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiRedstonePacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiRedstonePacket.java
@@ -1,5 +1,6 @@
package kamkeel.npcs.network.packets.client.gui;
+import cpw.mods.fml.relauncher.Side;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
@@ -7,6 +8,7 @@ import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.nbt.NBTTagCompound;
+import noppes.npcs.CustomNpcs;
import noppes.npcs.Server;
import noppes.npcs.client.NoppesUtil;
@@ -34,6 +36,9 @@ public final class GuiRedstonePacket extends AbstractPacket {
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ if(CustomNpcs.side() != Side.CLIENT)
+ return;
+
NBTTagCompound nbt = Server.readNBT(in);
NoppesUtil.saveRedstoneBlock(player, nbt);
}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiTeleporterPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiTeleporterPacket.java
index b9df7dd7c..2011197fb 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiTeleporterPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiTeleporterPacket.java
@@ -1,5 +1,6 @@
package kamkeel.npcs.network.packets.client.gui;
+import cpw.mods.fml.relauncher.Side;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
@@ -32,6 +33,9 @@ public final class GuiTeleporterPacket extends AbstractPacket {
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ if(CustomNpcs.side() != Side.CLIENT)
+ return;
+
CustomNpcs.proxy.openGui((EntityNPCInterface)null, EnumGuiType.NpcDimensions);
}
}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiWaypointPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiWaypointPacket.java
index 094e9ef90..3ad029dd3 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiWaypointPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiWaypointPacket.java
@@ -1,5 +1,6 @@
package kamkeel.npcs.network.packets.client.gui;
+import cpw.mods.fml.relauncher.Side;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
@@ -7,6 +8,7 @@ import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.nbt.NBTTagCompound;
+import noppes.npcs.CustomNpcs;
import noppes.npcs.Server;
import noppes.npcs.client.NoppesUtil;
@@ -34,6 +36,9 @@ public final class GuiWaypointPacket extends AbstractPacket {
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ if(CustomNpcs.side() != Side.CLIENT)
+ return;
+
NBTTagCompound nbt = Server.readNBT(in);
NoppesUtil.saveWayPointBlock(player, nbt);
}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/gui/IsGuiOpenPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/gui/IsGuiOpenPacket.java
index 041deba86..6531c89a4 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/gui/IsGuiOpenPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/gui/IsGuiOpenPacket.java
@@ -1,5 +1,6 @@
package kamkeel.npcs.network.packets.client.gui;
+import cpw.mods.fml.relauncher.Side;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
@@ -7,6 +8,7 @@ import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.client.Minecraft;
import net.minecraft.entity.player.EntityPlayer;
+import noppes.npcs.CustomNpcs;
import noppes.npcs.client.NoppesUtil;
import java.io.IOException;
@@ -33,6 +35,9 @@ public final class IsGuiOpenPacket extends AbstractPacket {
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ if(CustomNpcs.side() != Side.CLIENT)
+ return;
+
boolean isGuiOpen = Minecraft.getMinecraft().currentScreen != null;
NoppesUtil.isGUIOpen(isGuiOpen);
}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/gui/OpenBookPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/gui/OpenBookPacket.java
index 864b8d8e3..0c5d09a6e 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/gui/OpenBookPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/gui/OpenBookPacket.java
@@ -1,5 +1,6 @@
package kamkeel.npcs.network.packets.client.gui;
+import cpw.mods.fml.relauncher.Side;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
@@ -8,6 +9,7 @@ import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
+import noppes.npcs.CustomNpcs;
import noppes.npcs.Server;
import noppes.npcs.client.gui.player.GuiBook;
import noppes.npcs.client.NoppesUtil;
@@ -36,6 +38,9 @@ public final class OpenBookPacket extends AbstractPacket {
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ if(CustomNpcs.side() != Side.CLIENT)
+ return;
+
int x = in.readInt();
int y = in.readInt();
int z = in.readInt();
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/npc/DeleteNpcPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/npc/DeleteNpcPacket.java
index 738a3c91a..d46d66c8b 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/npc/DeleteNpcPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/npc/DeleteNpcPacket.java
@@ -1,5 +1,6 @@
package kamkeel.npcs.network.packets.client.npc;
+import cpw.mods.fml.relauncher.Side;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
@@ -8,6 +9,7 @@ import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.client.Minecraft;
import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer;
+import noppes.npcs.CustomNpcs;
import noppes.npcs.entity.EntityNPCInterface;
import java.io.IOException;
@@ -40,6 +42,9 @@ public final class DeleteNpcPacket extends AbstractPacket {
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ if(CustomNpcs.side() != Side.CLIENT)
+ return;
+
Entity entity = Minecraft.getMinecraft().theWorld.getEntityByID(in.readInt());
if (entity instanceof EntityNPCInterface) {
((EntityNPCInterface) entity).delete();
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/npc/EditNpcPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/npc/EditNpcPacket.java
index 9e2b8fa83..986f98a71 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/npc/EditNpcPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/npc/EditNpcPacket.java
@@ -1,5 +1,6 @@
package kamkeel.npcs.network.packets.client.npc;
+import cpw.mods.fml.relauncher.Side;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
@@ -8,6 +9,7 @@ import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.client.Minecraft;
import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer;
+import noppes.npcs.CustomNpcs;
import noppes.npcs.client.NoppesUtil;
import noppes.npcs.entity.EntityNPCInterface;
@@ -40,6 +42,9 @@ public final class EditNpcPacket extends AbstractPacket {
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ if(CustomNpcs.side() != Side.CLIENT)
+ return;
+
Entity entity = Minecraft.getMinecraft().theWorld.getEntityByID(in.readInt());
if (!(entity instanceof EntityNPCInterface)) {
return;
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/npc/UpdateNpcPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/npc/UpdateNpcPacket.java
index 916db40fa..69435950b 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/npc/UpdateNpcPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/npc/UpdateNpcPacket.java
@@ -1,5 +1,6 @@
package kamkeel.npcs.network.packets.client.npc;
+import cpw.mods.fml.relauncher.Side;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
@@ -9,6 +10,7 @@ import net.minecraft.client.Minecraft;
import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.nbt.NBTTagCompound;
+import noppes.npcs.CustomNpcs;
import noppes.npcs.Server;
import noppes.npcs.entity.EntityNPCInterface;
@@ -36,6 +38,9 @@ public final class UpdateNpcPacket extends AbstractPacket {
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ if(CustomNpcs.side() != Side.CLIENT)
+ return;
+
NBTTagCompound compound = Server.readNBT(in);
Entity entity = Minecraft.getMinecraft().theWorld.getEntityByID(compound.getInteger("EntityId"));
if (entity instanceof EntityNPCInterface) {
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/sound/ContinueSoundsPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/sound/ContinueSoundsPacket.java
index 47b151726..c577c945a 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/sound/ContinueSoundsPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/sound/ContinueSoundsPacket.java
@@ -1,11 +1,13 @@
package kamkeel.npcs.network.packets.client.sound;
+import cpw.mods.fml.relauncher.Side;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.entity.player.EntityPlayer;
+import noppes.npcs.CustomNpcs;
import noppes.npcs.client.controllers.ScriptSoundController;
import java.io.IOException;
@@ -32,6 +34,9 @@ public final class ContinueSoundsPacket extends AbstractPacket {
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ if(CustomNpcs.side() != Side.CLIENT)
+ return;
+
ScriptSoundController.Instance.continueAllSounds();
}
}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/sound/PauseSoundsPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/sound/PauseSoundsPacket.java
index add8d770e..e7998ca12 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/sound/PauseSoundsPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/sound/PauseSoundsPacket.java
@@ -1,11 +1,13 @@
package kamkeel.npcs.network.packets.client.sound;
+import cpw.mods.fml.relauncher.Side;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.entity.player.EntityPlayer;
+import noppes.npcs.CustomNpcs;
import noppes.npcs.client.controllers.ScriptSoundController;
import java.io.IOException;
@@ -32,6 +34,9 @@ public final class PauseSoundsPacket extends AbstractPacket {
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ if(CustomNpcs.side() != Side.CLIENT)
+ return;
+
ScriptSoundController.Instance.pauseAllSounds();
}
}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/sound/PlayMusicPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/sound/PlayMusicPacket.java
index b59cfb9e3..85ede77bd 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/sound/PlayMusicPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/sound/PlayMusicPacket.java
@@ -1,11 +1,13 @@
package kamkeel.npcs.network.packets.client.sound;
+import cpw.mods.fml.relauncher.Side;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.entity.player.EntityPlayer;
+import noppes.npcs.CustomNpcs;
import noppes.npcs.Server;
import noppes.npcs.client.controllers.MusicController;
@@ -33,6 +35,9 @@ public final class PlayMusicPacket extends AbstractPacket {
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ if(CustomNpcs.side() != Side.CLIENT)
+ return;
+
String musicName = Server.readString(in);
MusicController.Instance.playMusicBackground(musicName, player, Integer.MAX_VALUE);
}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/sound/PlaySoundPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/sound/PlaySoundPacket.java
index a81e3873a..6288417a5 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/sound/PlaySoundPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/sound/PlaySoundPacket.java
@@ -1,11 +1,13 @@
package kamkeel.npcs.network.packets.client.sound;
+import cpw.mods.fml.relauncher.Side;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.entity.player.EntityPlayer;
+import noppes.npcs.CustomNpcs;
import noppes.npcs.Server;
import noppes.npcs.client.controllers.MusicController;
@@ -33,6 +35,9 @@ public final class PlaySoundPacket extends AbstractPacket {
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ if(CustomNpcs.side() != Side.CLIENT)
+ return;
+
String soundName = Server.readString(in);
float x = in.readFloat();
float y = in.readFloat();
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/sound/PlaySoundToNoIdPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/sound/PlaySoundToNoIdPacket.java
index 665a477a0..b6ca766df 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/sound/PlaySoundToNoIdPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/sound/PlaySoundToNoIdPacket.java
@@ -1,5 +1,6 @@
package kamkeel.npcs.network.packets.client.sound;
+import cpw.mods.fml.relauncher.Side;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
@@ -7,6 +8,7 @@ import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.nbt.NBTTagCompound;
+import noppes.npcs.CustomNpcs;
import noppes.npcs.Server;
import noppes.npcs.client.controllers.ScriptClientSound;
import noppes.npcs.client.controllers.ScriptSoundController;
@@ -35,6 +37,9 @@ public final class PlaySoundToNoIdPacket extends AbstractPacket {
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ if(CustomNpcs.side() != Side.CLIENT)
+ return;
+
NBTTagCompound nbt = Server.readNBT(in);
ScriptClientSound sound = ScriptClientSound.fromScriptSound(nbt, player.worldObj);
ScriptSoundController.Instance.playSound(sound);
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/sound/PlaySoundToPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/sound/PlaySoundToPacket.java
index d8f4a94f0..8643c63dd 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/sound/PlaySoundToPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/sound/PlaySoundToPacket.java
@@ -1,5 +1,6 @@
package kamkeel.npcs.network.packets.client.sound;
+import cpw.mods.fml.relauncher.Side;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
@@ -7,6 +8,7 @@ import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.nbt.NBTTagCompound;
+import noppes.npcs.CustomNpcs;
import noppes.npcs.Server;
import noppes.npcs.client.controllers.ScriptClientSound;
import noppes.npcs.client.controllers.ScriptSoundController;
@@ -35,6 +37,9 @@ public final class PlaySoundToPacket extends AbstractPacket {
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ if(CustomNpcs.side() != Side.CLIENT)
+ return;
+
int soundId = in.readInt();
NBTTagCompound nbt = Server.readNBT(in);
ScriptClientSound sound = ScriptClientSound.fromScriptSound(nbt, player.worldObj);
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncConfigPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncConfigPacket.java
index 5532cd97f..bbf0aefd7 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncConfigPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncConfigPacket.java
@@ -1,5 +1,6 @@
package kamkeel.npcs.network.packets.client.sync;
+import cpw.mods.fml.relauncher.Side;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
@@ -7,6 +8,7 @@ import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.nbt.NBTTagCompound;
+import noppes.npcs.CustomNpcs;
import noppes.npcs.Server;
import noppes.npcs.controllers.SyncController;
@@ -34,6 +36,9 @@ public final class SyncConfigPacket extends AbstractPacket {
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ if(CustomNpcs.side() != Side.CLIENT)
+ return;
+
NBTTagCompound configNBT = Server.readNBT(in);
SyncController.receiveConfigs(configNBT);
}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncRecipesCarpentryBenchPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncRecipesCarpentryBenchPacket.java
index f78cf1ea1..445d85c81 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncRecipesCarpentryBenchPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncRecipesCarpentryBenchPacket.java
@@ -1,11 +1,13 @@
package kamkeel.npcs.network.packets.client.sync;
+import cpw.mods.fml.relauncher.Side;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.entity.player.EntityPlayer;
+import noppes.npcs.CustomNpcs;
import noppes.npcs.controllers.RecipeController;
import java.io.IOException;
@@ -32,6 +34,9 @@ public final class SyncRecipesCarpentryBenchPacket extends AbstractPacket {
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ if(CustomNpcs.side() != Side.CLIENT)
+ return;
+
RecipeController.Instance.anvilRecipes = RecipeController.syncRecipes;
RecipeController.syncRecipes.clear();
}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncRecipesWorkbenchPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncRecipesWorkbenchPacket.java
index da4608155..0e35a66a6 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncRecipesWorkbenchPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncRecipesWorkbenchPacket.java
@@ -1,11 +1,13 @@
package kamkeel.npcs.network.packets.client.sync;
+import cpw.mods.fml.relauncher.Side;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.entity.player.EntityPlayer;
+import noppes.npcs.CustomNpcs;
import noppes.npcs.controllers.RecipeController;
import java.io.IOException;
@@ -32,6 +34,9 @@ public final class SyncRecipesWorkbenchPacket extends AbstractPacket {
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ if(CustomNpcs.side() != Side.CLIENT)
+ return;
+
RecipeController.reloadGlobalRecipes(RecipeController.syncRecipes);
RecipeController.syncRecipes.clear();
}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncWeaponPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncWeaponPacket.java
index 22d9d9789..503c219e6 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncWeaponPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncWeaponPacket.java
@@ -1,5 +1,6 @@
package kamkeel.npcs.network.packets.client.sync;
+import cpw.mods.fml.relauncher.Side;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
@@ -9,6 +10,7 @@ import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
+import noppes.npcs.CustomNpcs;
import noppes.npcs.Server;
import noppes.npcs.entity.EntityNPCInterface;
@@ -36,6 +38,9 @@ public final class SyncWeaponPacket extends AbstractPacket {
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ if(CustomNpcs.side() != Side.CLIENT)
+ return;
+
Entity entity = player.worldObj.getEntityByID(in.readInt());
if (!(entity instanceof EntityNPCInterface)) return;
diff --git a/src/main/java/noppes/npcs/client/NoppesUtil.java b/src/main/java/noppes/npcs/client/NoppesUtil.java
index f4e3ab5ba..b0df591f8 100644
--- a/src/main/java/noppes/npcs/client/NoppesUtil.java
+++ b/src/main/java/noppes/npcs/client/NoppesUtil.java
@@ -4,19 +4,14 @@ import io.netty.buffer.ByteBuf;
import net.minecraft.client.Minecraft;
import net.minecraft.client.audio.PositionedSoundRecord;
import net.minecraft.client.gui.GuiScreen;
-import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer;
-import net.minecraft.nbt.CompressedStreamTools;
-import net.minecraft.nbt.NBTSizeTracker;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.nbt.NBTTagList;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.ResourceLocation;
import net.minecraft.util.Util;
-import net.minecraft.world.World;
import noppes.npcs.CustomNpcs;
import noppes.npcs.Server;
-import noppes.npcs.client.fx.CustomFX;
import noppes.npcs.client.gui.player.GuiDialogInteract;
import noppes.npcs.client.gui.player.GuiQuestCompletion;
import noppes.npcs.client.gui.util.GuiContainerNPCInterface;
@@ -29,15 +24,12 @@ import noppes.npcs.controllers.data.Dialog;
import noppes.npcs.controllers.data.Quest;
import noppes.npcs.controllers.data.SkinOverlay;
import noppes.npcs.entity.EntityNPCInterface;
-import noppes.npcs.scripted.ScriptParticle;
import org.lwjgl.Sys;
-import java.io.ByteArrayInputStream;
import java.io.File;
import java.io.IOException;
import java.net.URI;
import java.util.HashMap;
-import java.util.Random;
import java.util.Vector;
public class NoppesUtil {
@@ -50,28 +42,7 @@ public class NoppesUtil {
Client.sendData(EnumPacketServer.Gui, gui.ordinal(), i, j, k);
}
- public static void spawnParticle(ByteBuf buffer) throws IOException{
- double posX = buffer.readDouble();
- double posY = buffer.readDouble();
- double posZ = buffer.readDouble();
- float height = buffer.readFloat();
- float width = buffer.readFloat();
- float yOffset = buffer.readFloat();
-
- String particle = Server.readString(buffer);
- World worldObj = Minecraft.getMinecraft().theWorld;
-
- Random rand = worldObj.rand;
- if(particle.equals("heal")){
- for (int k = 0; k < 6; k++)
- {
- worldObj.spawnParticle("instantSpell", posX + (rand.nextDouble() - 0.5D) * (double)width, (posY + rand.nextDouble() * (double)height) - (double)yOffset, posZ + (rand.nextDouble() - 0.5D) * (double)width, 0, 0, 0);
- worldObj.spawnParticle("spell", posX + (rand.nextDouble() - 0.5D) * (double)width, (posY + rand.nextDouble() * (double)height) - (double)yOffset, posZ + (rand.nextDouble() - 0.5D) * (double)width, 0, 0, 0);
- }
- }
- }
-
- public static void updateSkinOverlayData(EntityPlayer player, NBTTagCompound compound) {
+ public static void updateSkinOverlayData(EntityPlayer player, NBTTagCompound compound) {
HashMap skinOverlays = new HashMap<>();
HashMap oldOverlays = new HashMap<>();
NBTTagList skinOverlayList = compound.getTagList("SkinOverlayData",10);
@@ -90,39 +61,7 @@ public class NoppesUtil {
ClientCacheHandler.skinOverlays.put(player.getUniqueID(), skinOverlays);
}
- public static void spawnScriptedParticle(EntityPlayer player, ByteBuf buffer){
- Minecraft minecraft = Minecraft.getMinecraft();
-
- NBTTagCompound compound;
- ScriptParticle particle;
- try {
- compound = Server.readNBT(buffer);
- particle = ScriptParticle.fromNBT(compound);
- } catch (IOException ignored) {
- return;
- }
-
- World worldObj = player.worldObj;
- if (worldObj == null) {
- return;
- }
-
- Entity entity = null;
- if (compound.hasKey("EntityID")) {
- entity = worldObj.getEntityByID(compound.getInteger("EntityID"));
- if (entity != null)
- worldObj = entity.worldObj;
- else return;
- }
-
- CustomFX fx = CustomFX.fromScriptedParticle(particle, worldObj, entity);
-
- for(int i = 0; i < particle.amount; i++){
- minecraft.effectRenderer.addEffect(fx);
- }
- }
-
- public static void clickSound() {
+ public static void clickSound() {
Minecraft.getMinecraft().getSoundHandler().playSound(PositionedSoundRecord.func_147674_a(new ResourceLocation("gui.button.press"), 1.0F));
}
diff --git a/src/main/java/noppes/npcs/client/PacketHandlerClient.java b/src/main/java/noppes/npcs/client/PacketHandlerClient.java
index b13f8df8b..d6c4c0f7a 100644
--- a/src/main/java/noppes/npcs/client/PacketHandlerClient.java
+++ b/src/main/java/noppes/npcs/client/PacketHandlerClient.java
@@ -124,12 +124,6 @@ public class PacketHandlerClient extends PacketHandlerServer{
EnumGuiType gui = EnumGuiType.values()[buffer.readInt()];
CustomNpcs.proxy.openGui(NoppesUtil.getLastNpc(), gui, buffer.readInt(), buffer.readInt(), buffer.readInt());
}
- else if(type == EnumPacketClient.SCRIPTED_PARTICLE){
- NoppesUtil.spawnScriptedParticle(player, buffer);
- }
- else if(type == EnumPacketClient.PARTICLE){
- NoppesUtil.spawnParticle(buffer);
- }
else if(type == EnumPacketClient.DELETE_NPC){
Entity entity = Minecraft.getMinecraft().theWorld.getEntityByID(buffer.readInt());
if(entity == null || !(entity instanceof EntityNPCInterface))
diff --git a/src/main/java/noppes/npcs/constants/EnumPacketClient.java b/src/main/java/noppes/npcs/constants/EnumPacketClient.java
index ec0ceb509..34b1a9934 100644
--- a/src/main/java/noppes/npcs/constants/EnumPacketClient.java
+++ b/src/main/java/noppes/npcs/constants/EnumPacketClient.java
@@ -12,8 +12,6 @@ public enum EnumPacketClient {
UPDATE_NPC,
ROLE,
GUI,
- SCRIPTED_PARTICLE,
- PARTICLE,
DELETE_NPC,
SCROLL_SELECTED,
GUI_REDSTONE,
From e8e868993b5e3d339710169e0f3be7496f815f89 Mon Sep 17 00:00:00 2001
From: Kam
Date: Wed, 29 Jan 2025 23:47:50 -0500
Subject: [PATCH 022/357] SideOnly Client for Client Packets
---
.../npcs/network/packets/client/AchievementPacket.java | 5 ++---
.../kamkeel/npcs/network/packets/client/ChatAlertPacket.java | 5 ++---
.../npcs/network/packets/client/ChatBubblePacket.java | 5 ++---
.../npcs/network/packets/client/ConfigCommandPacket.java | 5 ++---
.../kamkeel/npcs/network/packets/client/DialogPacket.java | 5 ++---
.../npcs/network/packets/client/DisableMouseInputPacket.java | 5 ++---
.../kamkeel/npcs/network/packets/client/MarkDataPacket.java | 5 ++---
.../network/packets/client/OverlayQuestTrackingPacket.java | 5 ++---
.../kamkeel/npcs/network/packets/client/ParticlePacket.java | 4 +---
.../kamkeel/npcs/network/packets/client/PartyDataPacket.java | 5 ++---
.../packets/client/PlayerUpdateSkinOverlaysPacket.java | 5 ++---
.../npcs/network/packets/client/QuestCompletionPacket.java | 5 ++---
.../java/kamkeel/npcs/network/packets/client/RolePacket.java | 5 ++---
.../network/packets/client/ScriptOverlayClosePacket.java | 5 ++---
.../npcs/network/packets/client/ScriptOverlayDataPacket.java | 5 ++---
.../npcs/network/packets/client/ScriptedParticlePacket.java | 1 +
.../npcs/network/packets/client/ScrollSelectedPacket.java | 5 ++---
.../npcs/network/packets/client/StopSoundForPacket.java | 5 ++---
.../npcs/network/packets/client/StopSoundsPacket.java | 5 ++---
.../npcs/network/packets/client/SwingPlayerArmPacket.java | 5 ++---
.../npcs/network/packets/client/UpdateAnimationsPacket.java | 5 ++---
.../npcs/network/packets/client/VillagerListPacket.java | 5 ++---
.../npcs/network/packets/client/gui/GuiClonerPacket.java | 4 ++--
.../npcs/network/packets/client/gui/GuiClosePacket.java | 5 ++---
.../npcs/network/packets/client/gui/GuiDataPacket.java | 5 ++---
.../npcs/network/packets/client/gui/GuiErrorPacket.java | 5 ++---
.../npcs/network/packets/client/gui/GuiOpenPacket.java | 5 ++---
.../npcs/network/packets/client/gui/GuiRedstonePacket.java | 5 ++---
.../npcs/network/packets/client/gui/GuiTeleporterPacket.java | 5 ++---
.../npcs/network/packets/client/gui/GuiWaypointPacket.java | 5 ++---
.../npcs/network/packets/client/gui/IsGuiOpenPacket.java | 5 ++---
.../npcs/network/packets/client/gui/OpenBookPacket.java | 5 ++---
.../npcs/network/packets/client/npc/DeleteNpcPacket.java | 5 ++---
.../npcs/network/packets/client/npc/EditNpcPacket.java | 5 ++---
.../npcs/network/packets/client/npc/UpdateNpcPacket.java | 5 ++---
.../network/packets/client/sound/ContinueSoundsPacket.java | 5 ++---
.../npcs/network/packets/client/sound/PauseSoundsPacket.java | 5 ++---
.../npcs/network/packets/client/sound/PlayMusicPacket.java | 5 ++---
.../npcs/network/packets/client/sound/PlaySoundPacket.java | 5 ++---
.../network/packets/client/sound/PlaySoundToNoIdPacket.java | 5 ++---
.../npcs/network/packets/client/sound/PlaySoundToPacket.java | 5 ++---
.../npcs/network/packets/client/sync/SyncConfigPacket.java | 5 ++---
.../network/packets/client/sync/SyncRecipesAddPacket.java | 5 ++---
.../packets/client/sync/SyncRecipesCarpentryBenchPacket.java | 5 ++---
.../packets/client/sync/SyncRecipesWorkbenchPacket.java | 5 ++---
.../npcs/network/packets/client/sync/SyncWeaponPacket.java | 5 ++---
46 files changed, 90 insertions(+), 134 deletions(-)
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/AchievementPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/AchievementPacket.java
index cec1f3b5e..253234780 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/AchievementPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/AchievementPacket.java
@@ -2,6 +2,7 @@ package kamkeel.npcs.network.packets.client;
import cpw.mods.fml.common.ObfuscationReflectionHelper;
import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
@@ -53,14 +54,12 @@ public final class AchievementPacket extends AbstractPacket {
ByteBufUtils.writeString(out, this.message);
}
+ @SideOnly(Side.CLIENT)
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
if(!ConfigClient.BannerAlerts)
return;
- if(CustomNpcs.side() != Side.CLIENT)
- return;
-
boolean isNotParty = !in.readBoolean();
String description = StatCollector.translateToLocal(ByteBufUtils.readString(in));
String message = ByteBufUtils.readString(in);
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/ChatAlertPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/ChatAlertPacket.java
index 055f34f1a..b5aa7cd28 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/ChatAlertPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/ChatAlertPacket.java
@@ -1,6 +1,7 @@
package kamkeel.npcs.network.packets.client;
import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
@@ -41,14 +42,12 @@ public final class ChatAlertPacket extends AbstractPacket {
ByteBufUtils.fillBuffer(out, this.objects);
}
+ @SideOnly(Side.CLIENT)
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
if(!ConfigClient.ChatAlerts)
return;
- if(CustomNpcs.side() != Side.CLIENT)
- return;
-
StringBuilder message = new StringBuilder();
String str;
while ((str = Server.readString(in)) != null && !str.isEmpty()) {
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/ChatBubblePacket.java b/src/main/java/kamkeel/npcs/network/packets/client/ChatBubblePacket.java
index 511dd76e3..3920bc337 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/ChatBubblePacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/ChatBubblePacket.java
@@ -1,6 +1,7 @@
package kamkeel.npcs.network.packets.client;
import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
@@ -50,11 +51,9 @@ public final class ChatBubblePacket extends AbstractPacket {
out.writeBoolean(this.hideText);
}
+ @SideOnly(Side.CLIENT)
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- if(CustomNpcs.side() != Side.CLIENT)
- return;
-
Entity entity = Minecraft.getMinecraft().theWorld.getEntityByID(in.readInt());
if(!(entity instanceof EntityNPCInterface))
return;
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/ConfigCommandPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/ConfigCommandPacket.java
index 6e41fe008..cb85e4f28 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/ConfigCommandPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/ConfigCommandPacket.java
@@ -1,6 +1,7 @@
package kamkeel.npcs.network.packets.client;
import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
@@ -36,11 +37,9 @@ public final class ConfigCommandPacket extends AbstractPacket {
// TODO: Send Packet
}
+ @SideOnly(Side.CLIENT)
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- if(CustomNpcs.side() != Side.CLIENT)
- return;
-
int configType = in.readInt();
if (configType == 0) { // Font Configuration
String font = Server.readString(in);
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/DialogPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/DialogPacket.java
index 1533ccad6..c254b308d 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/DialogPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/DialogPacket.java
@@ -1,6 +1,7 @@
package kamkeel.npcs.network.packets.client;
import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
@@ -51,11 +52,9 @@ public final class DialogPacket extends AbstractPacket {
ByteBufUtils.writeNBT(out, this.compound);
}
+ @SideOnly(Side.CLIENT)
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- if(CustomNpcs.side() != Side.CLIENT)
- return;
-
int entityID = in.readInt();
String name = ByteBufUtils.readString(in);
NBTTagCompound tagCompound = ByteBufUtils.readNBT(in);
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/DisableMouseInputPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/DisableMouseInputPacket.java
index 6c325f803..a94e52bb0 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/DisableMouseInputPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/DisableMouseInputPacket.java
@@ -1,6 +1,7 @@
package kamkeel.npcs.network.packets.client;
import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
@@ -33,11 +34,9 @@ public final class DisableMouseInputPacket extends AbstractPacket {
// TODO: Send Packet
}
+ @SideOnly(Side.CLIENT)
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- if(CustomNpcs.side() != Side.CLIENT)
- return;
-
long duration = in.readLong();
String parsedButtons = Server.readString(in);
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/MarkDataPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/MarkDataPacket.java
index 47df043a3..86f58f0fc 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/MarkDataPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/MarkDataPacket.java
@@ -1,6 +1,7 @@
package kamkeel.npcs.network.packets.client;
import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
@@ -36,11 +37,9 @@ public final class MarkDataPacket extends AbstractPacket {
// TODO: Send Packet
}
+ @SideOnly(Side.CLIENT)
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- if(CustomNpcs.side() != Side.CLIENT)
- return;
-
Entity entity = player.worldObj.getEntityByID(in.readInt());
if (!(entity instanceof EntityNPCInterface)) return;
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/OverlayQuestTrackingPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/OverlayQuestTrackingPacket.java
index cc7dca9aa..ec7e42fa9 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/OverlayQuestTrackingPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/OverlayQuestTrackingPacket.java
@@ -1,6 +1,7 @@
package kamkeel.npcs.network.packets.client;
import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
@@ -36,11 +37,9 @@ public final class OverlayQuestTrackingPacket extends AbstractPacket {
// TODO: Send Packet
}
+ @SideOnly(Side.CLIENT)
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- if(CustomNpcs.side() != Side.CLIENT)
- return;
-
try {
NBTTagCompound nbt = Server.readNBT(in);
ClientCacheHandler.questTrackingOverlay = new OverlayQuestTracking(Minecraft.getMinecraft());
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/ParticlePacket.java b/src/main/java/kamkeel/npcs/network/packets/client/ParticlePacket.java
index f59f63248..060c02cc8 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/ParticlePacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/ParticlePacket.java
@@ -65,11 +65,9 @@ public final class ParticlePacket extends AbstractPacket {
ByteBufUtils.writeString(out, particle);
}
+ @SideOnly(Side.CLIENT)
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- if(CustomNpcs.side() != Side.CLIENT)
- return;
-
spawnParticle(in);
}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/PartyDataPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/PartyDataPacket.java
index 8bfad94b8..6bdbc2023 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/PartyDataPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/PartyDataPacket.java
@@ -1,6 +1,7 @@
package kamkeel.npcs.network.packets.client;
import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
@@ -38,11 +39,9 @@ public final class PartyDataPacket extends AbstractPacket {
// TODO: Send Packet
}
+ @SideOnly(Side.CLIENT)
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- if(CustomNpcs.side() != Side.CLIENT)
- return;
-
GuiScreen gui = Minecraft.getMinecraft().currentScreen;
if (gui instanceof GuiNPCInterface && ((GuiNPCInterface) gui).hasSubGui()) {
gui = (GuiScreen) ((GuiNPCInterface) gui).getSubGui();
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/PlayerUpdateSkinOverlaysPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/PlayerUpdateSkinOverlaysPacket.java
index d8537f1a2..efdb92eab 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/PlayerUpdateSkinOverlaysPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/PlayerUpdateSkinOverlaysPacket.java
@@ -1,6 +1,7 @@
package kamkeel.npcs.network.packets.client;
import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
@@ -35,11 +36,9 @@ public final class PlayerUpdateSkinOverlaysPacket extends AbstractPacket {
// TODO: Send Packet
}
+ @SideOnly(Side.CLIENT)
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- if(CustomNpcs.side() != Side.CLIENT)
- return;
-
String playerName = Server.readString(in);
NBTTagCompound nbt = Server.readNBT(in);
EntityPlayer sendingPlayer = Minecraft.getMinecraft().theWorld.getPlayerEntityByName(playerName);
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/QuestCompletionPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/QuestCompletionPacket.java
index 62db8e592..951edf70a 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/QuestCompletionPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/QuestCompletionPacket.java
@@ -1,6 +1,7 @@
package kamkeel.npcs.network.packets.client;
import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
@@ -33,11 +34,9 @@ public final class QuestCompletionPacket extends AbstractPacket {
// TODO: Send Packet
}
+ @SideOnly(Side.CLIENT)
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- if(CustomNpcs.side() != Side.CLIENT)
- return;
-
NoppesUtil.guiQuestCompletion(player, Server.readNBT(in));
}
}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/RolePacket.java b/src/main/java/kamkeel/npcs/network/packets/client/RolePacket.java
index 801a6efb3..2b088ca6f 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/RolePacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/RolePacket.java
@@ -1,6 +1,7 @@
package kamkeel.npcs.network.packets.client;
import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
@@ -44,11 +45,9 @@ public final class RolePacket extends AbstractPacket {
ByteBufUtils.writeNBT(out, this.compound);
}
+ @SideOnly(Side.CLIENT)
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- if(CustomNpcs.side() != Side.CLIENT)
- return;
-
NBTTagCompound compound = ByteBufUtils.readNBT(in);
Entity entity = Minecraft.getMinecraft().theWorld.getEntityByID(compound.getInteger("EntityId"));
if (entity instanceof EntityNPCInterface) {
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/ScriptOverlayClosePacket.java b/src/main/java/kamkeel/npcs/network/packets/client/ScriptOverlayClosePacket.java
index 7215684e7..145de9c51 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/ScriptOverlayClosePacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/ScriptOverlayClosePacket.java
@@ -1,6 +1,7 @@
package kamkeel.npcs.network.packets.client;
import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
@@ -32,11 +33,9 @@ public final class ScriptOverlayClosePacket extends AbstractPacket {
// TODO: Send Packet
}
+ @SideOnly(Side.CLIENT)
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- if(CustomNpcs.side() != Side.CLIENT)
- return;
-
int overlayId = in.readInt();
ClientCacheHandler.customOverlays.remove(overlayId);
}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/ScriptOverlayDataPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/ScriptOverlayDataPacket.java
index 7e9680584..936549389 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/ScriptOverlayDataPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/ScriptOverlayDataPacket.java
@@ -1,6 +1,7 @@
package kamkeel.npcs.network.packets.client;
import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
@@ -35,11 +36,9 @@ public final class ScriptOverlayDataPacket extends AbstractPacket {
// TODO: Send Packet
}
+ @SideOnly(Side.CLIENT)
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- if(CustomNpcs.side() != Side.CLIENT)
- return;
-
OverlayCustom overlayCustom = new OverlayCustom(Minecraft.getMinecraft());
overlayCustom.setOverlayData(Server.readNBT(in));
ClientCacheHandler.customOverlays.put(overlayCustom.overlay.getID(), overlayCustom);
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/ScriptedParticlePacket.java b/src/main/java/kamkeel/npcs/network/packets/client/ScriptedParticlePacket.java
index 07c60cba5..9e08af69a 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/ScriptedParticlePacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/ScriptedParticlePacket.java
@@ -46,6 +46,7 @@ public final class ScriptedParticlePacket extends AbstractPacket {
ByteBufUtils.writeNBT(out, compound);
}
+ @SideOnly(Side.CLIENT)
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
if(CustomNpcs.side() != Side.CLIENT)
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/ScrollSelectedPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/ScrollSelectedPacket.java
index 7a5750051..d705df2de 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/ScrollSelectedPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/ScrollSelectedPacket.java
@@ -1,6 +1,7 @@
package kamkeel.npcs.network.packets.client;
import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
@@ -35,11 +36,9 @@ public final class ScrollSelectedPacket extends AbstractPacket {
// TODO: Send Packet
}
+ @SideOnly(Side.CLIENT)
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- if(CustomNpcs.side() != Side.CLIENT)
- return;
-
GuiScreen gui = Minecraft.getMinecraft().currentScreen;
if (gui instanceof IScrollData) {
String selected = Server.readString(in);
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/StopSoundForPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/StopSoundForPacket.java
index d2de64a97..1d972d0aa 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/StopSoundForPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/StopSoundForPacket.java
@@ -1,6 +1,7 @@
package kamkeel.npcs.network.packets.client;
import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
@@ -32,11 +33,9 @@ public final class StopSoundForPacket extends AbstractPacket {
// TODO: Send Packet
}
+ @SideOnly(Side.CLIENT)
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- if(CustomNpcs.side() != Side.CLIENT)
- return;
-
int soundId = in.readInt();
ScriptSoundController.Instance.stopSound(soundId);
}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/StopSoundsPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/StopSoundsPacket.java
index 07920a16c..384d04cb7 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/StopSoundsPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/StopSoundsPacket.java
@@ -1,6 +1,7 @@
package kamkeel.npcs.network.packets.client;
import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
@@ -32,11 +33,9 @@ public final class StopSoundsPacket extends AbstractPacket {
// TODO: Send Packet
}
+ @SideOnly(Side.CLIENT)
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- if(CustomNpcs.side() != Side.CLIENT)
- return;
-
ScriptSoundController.Instance.stopAllSounds();
}
}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/SwingPlayerArmPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/SwingPlayerArmPacket.java
index 05ba2a996..56217ae4b 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/SwingPlayerArmPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/SwingPlayerArmPacket.java
@@ -1,6 +1,7 @@
package kamkeel.npcs.network.packets.client;
import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
@@ -32,11 +33,9 @@ public final class SwingPlayerArmPacket extends AbstractPacket {
// TODO: Send Packet
}
+ @SideOnly(Side.CLIENT)
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- if(CustomNpcs.side() != Side.CLIENT)
- return;
-
Minecraft.getMinecraft().thePlayer.swingItem();
}
}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/UpdateAnimationsPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/UpdateAnimationsPacket.java
index 5776abd9b..57f14ce49 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/UpdateAnimationsPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/UpdateAnimationsPacket.java
@@ -1,6 +1,7 @@
package kamkeel.npcs.network.packets.client;
import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
@@ -39,11 +40,9 @@ public final class UpdateAnimationsPacket extends AbstractPacket {
// TODO: Send Packet
}
+ @SideOnly(Side.CLIENT)
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- if(CustomNpcs.side() != Side.CLIENT)
- return;
-
NBTTagCompound nbt = Server.readNBT(in);
AnimationData animationData = null;
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/VillagerListPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/VillagerListPacket.java
index d9d437155..8f67e4fe6 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/VillagerListPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/VillagerListPacket.java
@@ -1,6 +1,7 @@
package kamkeel.npcs.network.packets.client;
import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
@@ -34,11 +35,9 @@ public final class VillagerListPacket extends AbstractPacket {
// TODO: Send Packet
}
+ @SideOnly(Side.CLIENT)
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- if(CustomNpcs.side() != Side.CLIENT)
- return;
-
MerchantRecipeList recipes = MerchantRecipeList.func_151390_b(new PacketBuffer(in));
ServerEventsHandler.Merchant.setRecipes(recipes);
}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiClonerPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiClonerPacket.java
index 3e3004f28..486a6e128 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiClonerPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiClonerPacket.java
@@ -1,6 +1,7 @@
package kamkeel.npcs.network.packets.client.gui;
import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
@@ -41,10 +42,9 @@ public final class GuiClonerPacket extends AbstractPacket {
ByteBufUtils.writeNBT(out, compound);
}
+ @SideOnly(Side.CLIENT)
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- if(CustomNpcs.side() != Side.CLIENT)
- return;
NBTTagCompound nbt = ByteBufUtils.readNBT(in);
NoppesUtil.openGUI(player, new GuiNpcMobSpawnerAdd(nbt));
}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiClosePacket.java b/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiClosePacket.java
index 515f7acb0..cf1c75ee9 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiClosePacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiClosePacket.java
@@ -1,6 +1,7 @@
package kamkeel.npcs.network.packets.client.gui;
import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
@@ -46,11 +47,9 @@ public final class GuiClosePacket extends AbstractPacket {
ByteBufUtils.writeNBT(out, compound);
}
+ @SideOnly(Side.CLIENT)
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- if(CustomNpcs.side() != Side.CLIENT)
- return;
-
GuiScreen gui = Minecraft.getMinecraft().currentScreen;
if (gui instanceof IGuiClose) {
int closeCode = in.readInt();
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiDataPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiDataPacket.java
index cd10c94dc..1ee404bd0 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiDataPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiDataPacket.java
@@ -1,6 +1,7 @@
package kamkeel.npcs.network.packets.client.gui;
import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
@@ -45,11 +46,9 @@ public final class GuiDataPacket extends AbstractPacket {
ByteBufUtils.writeNBT(out, compound);
}
+ @SideOnly(Side.CLIENT)
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- if(CustomNpcs.side() != Side.CLIENT)
- return;
-
GuiScreen gui = Minecraft.getMinecraft().currentScreen;
if (gui instanceof GuiNPCInterface && ((GuiNPCInterface) gui).hasSubGui()) {
gui = (GuiScreen) ((GuiNPCInterface) gui).getSubGui();
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiErrorPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiErrorPacket.java
index 1f1593b00..b1620962b 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiErrorPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiErrorPacket.java
@@ -1,6 +1,7 @@
package kamkeel.npcs.network.packets.client.gui;
import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
@@ -46,11 +47,9 @@ public final class GuiErrorPacket extends AbstractPacket {
ByteBufUtils.writeNBT(out, compound);
}
+ @SideOnly(Side.CLIENT)
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- if(CustomNpcs.side() != Side.CLIENT)
- return;
-
GuiScreen gui = Minecraft.getMinecraft().currentScreen;
if (gui instanceof IGuiError) {
int errorCode = in.readInt();
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiOpenPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiOpenPacket.java
index 58aa52879..d85ac885e 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiOpenPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiOpenPacket.java
@@ -1,6 +1,7 @@
package kamkeel.npcs.network.packets.client.gui;
import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
@@ -47,11 +48,9 @@ public final class GuiOpenPacket extends AbstractPacket {
out.writeInt(z);
}
+ @SideOnly(Side.CLIENT)
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- if(CustomNpcs.side() != Side.CLIENT)
- return;
-
EnumGuiType gui = EnumGuiType.values()[in.readInt()];
int x = in.readInt();
int y = in.readInt();
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiRedstonePacket.java b/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiRedstonePacket.java
index b96c8a19d..1284d70e2 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiRedstonePacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiRedstonePacket.java
@@ -1,6 +1,7 @@
package kamkeel.npcs.network.packets.client.gui;
import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
@@ -34,11 +35,9 @@ public final class GuiRedstonePacket extends AbstractPacket {
// TODO: Send Packet
}
+ @SideOnly(Side.CLIENT)
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- if(CustomNpcs.side() != Side.CLIENT)
- return;
-
NBTTagCompound nbt = Server.readNBT(in);
NoppesUtil.saveRedstoneBlock(player, nbt);
}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiTeleporterPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiTeleporterPacket.java
index 2011197fb..c42bc8a89 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiTeleporterPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiTeleporterPacket.java
@@ -1,6 +1,7 @@
package kamkeel.npcs.network.packets.client.gui;
import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
@@ -31,11 +32,9 @@ public final class GuiTeleporterPacket extends AbstractPacket {
@Override
public void sendData(ByteBuf out) throws IOException {}
+ @SideOnly(Side.CLIENT)
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- if(CustomNpcs.side() != Side.CLIENT)
- return;
-
CustomNpcs.proxy.openGui((EntityNPCInterface)null, EnumGuiType.NpcDimensions);
}
}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiWaypointPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiWaypointPacket.java
index 3ad029dd3..e449e7b18 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiWaypointPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiWaypointPacket.java
@@ -1,6 +1,7 @@
package kamkeel.npcs.network.packets.client.gui;
import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
@@ -34,11 +35,9 @@ public final class GuiWaypointPacket extends AbstractPacket {
// TODO: Send Packet
}
+ @SideOnly(Side.CLIENT)
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- if(CustomNpcs.side() != Side.CLIENT)
- return;
-
NBTTagCompound nbt = Server.readNBT(in);
NoppesUtil.saveWayPointBlock(player, nbt);
}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/gui/IsGuiOpenPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/gui/IsGuiOpenPacket.java
index 6531c89a4..30be1b9fc 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/gui/IsGuiOpenPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/gui/IsGuiOpenPacket.java
@@ -1,6 +1,7 @@
package kamkeel.npcs.network.packets.client.gui;
import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
@@ -33,11 +34,9 @@ public final class IsGuiOpenPacket extends AbstractPacket {
// TODO: Send Packet
}
+ @SideOnly(Side.CLIENT)
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- if(CustomNpcs.side() != Side.CLIENT)
- return;
-
boolean isGuiOpen = Minecraft.getMinecraft().currentScreen != null;
NoppesUtil.isGUIOpen(isGuiOpen);
}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/gui/OpenBookPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/gui/OpenBookPacket.java
index 0c5d09a6e..b8848ba1b 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/gui/OpenBookPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/gui/OpenBookPacket.java
@@ -1,6 +1,7 @@
package kamkeel.npcs.network.packets.client.gui;
import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
@@ -36,11 +37,9 @@ public final class OpenBookPacket extends AbstractPacket {
// TODO: Send Packet
}
+ @SideOnly(Side.CLIENT)
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- if(CustomNpcs.side() != Side.CLIENT)
- return;
-
int x = in.readInt();
int y = in.readInt();
int z = in.readInt();
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/npc/DeleteNpcPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/npc/DeleteNpcPacket.java
index d46d66c8b..3f841ac54 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/npc/DeleteNpcPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/npc/DeleteNpcPacket.java
@@ -1,6 +1,7 @@
package kamkeel.npcs.network.packets.client.npc;
import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
@@ -40,11 +41,9 @@ public final class DeleteNpcPacket extends AbstractPacket {
out.writeInt(this.entityId);
}
+ @SideOnly(Side.CLIENT)
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- if(CustomNpcs.side() != Side.CLIENT)
- return;
-
Entity entity = Minecraft.getMinecraft().theWorld.getEntityByID(in.readInt());
if (entity instanceof EntityNPCInterface) {
((EntityNPCInterface) entity).delete();
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/npc/EditNpcPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/npc/EditNpcPacket.java
index 986f98a71..87524d037 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/npc/EditNpcPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/npc/EditNpcPacket.java
@@ -1,6 +1,7 @@
package kamkeel.npcs.network.packets.client.npc;
import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
@@ -40,11 +41,9 @@ public final class EditNpcPacket extends AbstractPacket {
out.writeInt(this.entityId);
}
+ @SideOnly(Side.CLIENT)
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- if(CustomNpcs.side() != Side.CLIENT)
- return;
-
Entity entity = Minecraft.getMinecraft().theWorld.getEntityByID(in.readInt());
if (!(entity instanceof EntityNPCInterface)) {
return;
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/npc/UpdateNpcPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/npc/UpdateNpcPacket.java
index 69435950b..7fd6a281d 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/npc/UpdateNpcPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/npc/UpdateNpcPacket.java
@@ -1,6 +1,7 @@
package kamkeel.npcs.network.packets.client.npc;
import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
@@ -36,11 +37,9 @@ public final class UpdateNpcPacket extends AbstractPacket {
// TODO: Send Packet
}
+ @SideOnly(Side.CLIENT)
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- if(CustomNpcs.side() != Side.CLIENT)
- return;
-
NBTTagCompound compound = Server.readNBT(in);
Entity entity = Minecraft.getMinecraft().theWorld.getEntityByID(compound.getInteger("EntityId"));
if (entity instanceof EntityNPCInterface) {
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/sound/ContinueSoundsPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/sound/ContinueSoundsPacket.java
index c577c945a..8c7f54a52 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/sound/ContinueSoundsPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/sound/ContinueSoundsPacket.java
@@ -1,6 +1,7 @@
package kamkeel.npcs.network.packets.client.sound;
import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
@@ -32,11 +33,9 @@ public final class ContinueSoundsPacket extends AbstractPacket {
// TODO: Send Packet
}
+ @SideOnly(Side.CLIENT)
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- if(CustomNpcs.side() != Side.CLIENT)
- return;
-
ScriptSoundController.Instance.continueAllSounds();
}
}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/sound/PauseSoundsPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/sound/PauseSoundsPacket.java
index e7998ca12..e80ff0970 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/sound/PauseSoundsPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/sound/PauseSoundsPacket.java
@@ -1,6 +1,7 @@
package kamkeel.npcs.network.packets.client.sound;
import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
@@ -32,11 +33,9 @@ public final class PauseSoundsPacket extends AbstractPacket {
// TODO: Send Packet
}
+ @SideOnly(Side.CLIENT)
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- if(CustomNpcs.side() != Side.CLIENT)
- return;
-
ScriptSoundController.Instance.pauseAllSounds();
}
}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/sound/PlayMusicPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/sound/PlayMusicPacket.java
index 85ede77bd..488f0a0db 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/sound/PlayMusicPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/sound/PlayMusicPacket.java
@@ -1,6 +1,7 @@
package kamkeel.npcs.network.packets.client.sound;
import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
@@ -33,11 +34,9 @@ public final class PlayMusicPacket extends AbstractPacket {
// TODO: Send Packet
}
+ @SideOnly(Side.CLIENT)
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- if(CustomNpcs.side() != Side.CLIENT)
- return;
-
String musicName = Server.readString(in);
MusicController.Instance.playMusicBackground(musicName, player, Integer.MAX_VALUE);
}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/sound/PlaySoundPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/sound/PlaySoundPacket.java
index 6288417a5..bbee638d3 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/sound/PlaySoundPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/sound/PlaySoundPacket.java
@@ -1,6 +1,7 @@
package kamkeel.npcs.network.packets.client.sound;
import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
@@ -33,11 +34,9 @@ public final class PlaySoundPacket extends AbstractPacket {
// TODO: Send Packet
}
+ @SideOnly(Side.CLIENT)
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- if(CustomNpcs.side() != Side.CLIENT)
- return;
-
String soundName = Server.readString(in);
float x = in.readFloat();
float y = in.readFloat();
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/sound/PlaySoundToNoIdPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/sound/PlaySoundToNoIdPacket.java
index b6ca766df..a82b687e6 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/sound/PlaySoundToNoIdPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/sound/PlaySoundToNoIdPacket.java
@@ -1,6 +1,7 @@
package kamkeel.npcs.network.packets.client.sound;
import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
@@ -35,11 +36,9 @@ public final class PlaySoundToNoIdPacket extends AbstractPacket {
// TODO: Send Packet
}
+ @SideOnly(Side.CLIENT)
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- if(CustomNpcs.side() != Side.CLIENT)
- return;
-
NBTTagCompound nbt = Server.readNBT(in);
ScriptClientSound sound = ScriptClientSound.fromScriptSound(nbt, player.worldObj);
ScriptSoundController.Instance.playSound(sound);
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/sound/PlaySoundToPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/sound/PlaySoundToPacket.java
index 8643c63dd..bc364fbee 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/sound/PlaySoundToPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/sound/PlaySoundToPacket.java
@@ -1,6 +1,7 @@
package kamkeel.npcs.network.packets.client.sound;
import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
@@ -35,11 +36,9 @@ public final class PlaySoundToPacket extends AbstractPacket {
// TODO: Send Packet
}
+ @SideOnly(Side.CLIENT)
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- if(CustomNpcs.side() != Side.CLIENT)
- return;
-
int soundId = in.readInt();
NBTTagCompound nbt = Server.readNBT(in);
ScriptClientSound sound = ScriptClientSound.fromScriptSound(nbt, player.worldObj);
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncConfigPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncConfigPacket.java
index bbf0aefd7..b27bc4dd9 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncConfigPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncConfigPacket.java
@@ -1,6 +1,7 @@
package kamkeel.npcs.network.packets.client.sync;
import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
@@ -34,11 +35,9 @@ public final class SyncConfigPacket extends AbstractPacket {
// TODO: Send Packet
}
+ @SideOnly(Side.CLIENT)
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- if(CustomNpcs.side() != Side.CLIENT)
- return;
-
NBTTagCompound configNBT = Server.readNBT(in);
SyncController.receiveConfigs(configNBT);
}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncRecipesAddPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncRecipesAddPacket.java
index cdef473ec..b3cd733f3 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncRecipesAddPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncRecipesAddPacket.java
@@ -1,6 +1,7 @@
package kamkeel.npcs.network.packets.client.sync;
import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
@@ -35,11 +36,9 @@ public final class SyncRecipesAddPacket extends AbstractPacket {
// TODO: Send Packet
}
+ @SideOnly(Side.CLIENT)
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- if(CustomNpcs.side() != Side.CLIENT)
- return;
-
NBTTagList list = Server.readNBT(in).getTagList("recipes", 10);
if (list != null) {
for (int i = 0; i < list.tagCount(); i++) {
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncRecipesCarpentryBenchPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncRecipesCarpentryBenchPacket.java
index 445d85c81..d30ca5643 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncRecipesCarpentryBenchPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncRecipesCarpentryBenchPacket.java
@@ -1,6 +1,7 @@
package kamkeel.npcs.network.packets.client.sync;
import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
@@ -32,11 +33,9 @@ public final class SyncRecipesCarpentryBenchPacket extends AbstractPacket {
// TODO: Send Packet
}
+ @SideOnly(Side.CLIENT)
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- if(CustomNpcs.side() != Side.CLIENT)
- return;
-
RecipeController.Instance.anvilRecipes = RecipeController.syncRecipes;
RecipeController.syncRecipes.clear();
}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncRecipesWorkbenchPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncRecipesWorkbenchPacket.java
index 0e35a66a6..2b489d00a 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncRecipesWorkbenchPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncRecipesWorkbenchPacket.java
@@ -1,6 +1,7 @@
package kamkeel.npcs.network.packets.client.sync;
import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
@@ -32,11 +33,9 @@ public final class SyncRecipesWorkbenchPacket extends AbstractPacket {
// TODO: Send Packet
}
+ @SideOnly(Side.CLIENT)
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- if(CustomNpcs.side() != Side.CLIENT)
- return;
-
RecipeController.reloadGlobalRecipes(RecipeController.syncRecipes);
RecipeController.syncRecipes.clear();
}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncWeaponPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncWeaponPacket.java
index 503c219e6..9640fa422 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncWeaponPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncWeaponPacket.java
@@ -1,6 +1,7 @@
package kamkeel.npcs.network.packets.client.sync;
import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
@@ -36,11 +37,9 @@ public final class SyncWeaponPacket extends AbstractPacket {
// TODO: Send Packet
}
+ @SideOnly(Side.CLIENT)
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- if(CustomNpcs.side() != Side.CLIENT)
- return;
-
Entity entity = player.worldObj.getEntityByID(in.readInt());
if (!(entity instanceof EntityNPCInterface)) return;
From 31c7ceacab512b4bcd59fa96b824a4ff46e0dab1 Mon Sep 17 00:00:00 2001
From: Kam
Date: Thu, 30 Jan 2025 01:35:48 -0500
Subject: [PATCH 023/357] Sound Packet Commit
---
.../kamkeel/npcs/network/PacketHandler.java | 1 +
.../npcs/network/enums/EnumClientPacket.java | 7 +-
.../network/enums/EnumSoundOperation.java | 12 ++
.../packets/client/SoundManagementPacket.java | 145 ++++++++++++++++++
.../packets/client/StopSoundForPacket.java | 42 -----
.../packets/client/StopSoundsPacket.java | 41 -----
.../ScriptOverlayClosePacket.java | 3 +-
.../{ => script}/ScriptOverlayDataPacket.java | 3 +-
.../{ => script}/ScriptedParticlePacket.java | 2 +-
.../client/sound/ContinueSoundsPacket.java | 41 -----
.../client/sound/PauseSoundsPacket.java | 41 -----
.../packets/client/sound/PlayMusicPacket.java | 43 ------
.../packets/client/sound/PlaySoundPacket.java | 46 ------
.../client/sound/PlaySoundToNoIdPacket.java | 46 ------
.../client/sound/PlaySoundToPacket.java | 47 ------
.../java/noppes/npcs/NoppesUtilPlayer.java | 16 +-
.../java/noppes/npcs/NoppesUtilServer.java | 3 +-
.../java/noppes/npcs/ServerEventsHandler.java | 5 +-
.../npcs/client/PacketHandlerClient.java | 31 ----
.../npcs/constants/EnumPacketClient.java | 8 -
.../npcs/entity/EntityNPCInterface.java | 7 +-
21 files changed, 181 insertions(+), 409 deletions(-)
create mode 100644 src/main/java/kamkeel/npcs/network/enums/EnumSoundOperation.java
create mode 100644 src/main/java/kamkeel/npcs/network/packets/client/SoundManagementPacket.java
delete mode 100644 src/main/java/kamkeel/npcs/network/packets/client/StopSoundForPacket.java
delete mode 100644 src/main/java/kamkeel/npcs/network/packets/client/StopSoundsPacket.java
rename src/main/java/kamkeel/npcs/network/packets/client/{ => script}/ScriptOverlayClosePacket.java (93%)
rename src/main/java/kamkeel/npcs/network/packets/client/{ => script}/ScriptOverlayDataPacket.java (94%)
rename src/main/java/kamkeel/npcs/network/packets/client/{ => script}/ScriptedParticlePacket.java (98%)
delete mode 100644 src/main/java/kamkeel/npcs/network/packets/client/sound/ContinueSoundsPacket.java
delete mode 100644 src/main/java/kamkeel/npcs/network/packets/client/sound/PauseSoundsPacket.java
delete mode 100644 src/main/java/kamkeel/npcs/network/packets/client/sound/PlayMusicPacket.java
delete mode 100644 src/main/java/kamkeel/npcs/network/packets/client/sound/PlaySoundPacket.java
delete mode 100644 src/main/java/kamkeel/npcs/network/packets/client/sound/PlaySoundToNoIdPacket.java
delete mode 100644 src/main/java/kamkeel/npcs/network/packets/client/sound/PlaySoundToPacket.java
diff --git a/src/main/java/kamkeel/npcs/network/PacketHandler.java b/src/main/java/kamkeel/npcs/network/PacketHandler.java
index 1265552c7..90da65178 100644
--- a/src/main/java/kamkeel/npcs/network/PacketHandler.java
+++ b/src/main/java/kamkeel/npcs/network/PacketHandler.java
@@ -15,6 +15,7 @@ import kamkeel.npcs.network.packets.client.large.LargeScrollListPacket;
import kamkeel.npcs.network.packets.client.large.sync.LargeSyncPacket;
import kamkeel.npcs.network.packets.client.npc.DeleteNpcPacket;
import kamkeel.npcs.network.packets.client.npc.EditNpcPacket;
+import kamkeel.npcs.network.packets.client.script.ScriptedParticlePacket;
import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.EntityPlayerMP;
diff --git a/src/main/java/kamkeel/npcs/network/enums/EnumClientPacket.java b/src/main/java/kamkeel/npcs/network/enums/EnumClientPacket.java
index e6e93e6ff..489662c7d 100644
--- a/src/main/java/kamkeel/npcs/network/enums/EnumClientPacket.java
+++ b/src/main/java/kamkeel/npcs/network/enums/EnumClientPacket.java
@@ -5,6 +5,7 @@ public enum EnumClientPacket {
SYNC,
CHAT_ALERT,
ACHIEVEMENT,
+ SOUND,
PARTY_MESSAGE,
SYNCRECIPES_ADD,
SYNCRECIPES_WORKBENCH,
@@ -44,12 +45,6 @@ public enum EnumClientPacket {
UPDATE_ANIMATIONS,
OVERLAY_QUEST_TRACKING,
DISABLE_MOUSE_INPUT,
- PLAY_SOUND_TO,
- PLAY_SOUND_TO_NO_ID,
- STOP_SOUND_FOR,
- PAUSE_SOUNDS,
- CONTINUE_SOUNDS,
- STOP_SOUNDS,
SYNC_WEAPON,
MARK_DATA,
SYNC_ADD, SYNC_END, SYNC_UPDATE, SYNC_REMOVE, SYNC_PLAYER,
diff --git a/src/main/java/kamkeel/npcs/network/enums/EnumSoundOperation.java b/src/main/java/kamkeel/npcs/network/enums/EnumSoundOperation.java
new file mode 100644
index 000000000..3295df155
--- /dev/null
+++ b/src/main/java/kamkeel/npcs/network/enums/EnumSoundOperation.java
@@ -0,0 +1,12 @@
+package kamkeel.npcs.network.enums;
+
+public enum EnumSoundOperation {
+ CONTINUE_SOUNDS,
+ PAUSE_SOUNDS,
+ PLAY_MUSIC,
+ PLAY_SOUND,
+ PLAY_SOUND_TO,
+ PLAY_SOUND_TO_NO_ID,
+ STOP_SOUND_FOR,
+ STOP_SOUNDS
+}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/SoundManagementPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/SoundManagementPacket.java
new file mode 100644
index 000000000..8356b7397
--- /dev/null
+++ b/src/main/java/kamkeel/npcs/network/packets/client/SoundManagementPacket.java
@@ -0,0 +1,145 @@
+package kamkeel.npcs.network.packets.client;
+
+import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
+import io.netty.buffer.ByteBuf;
+import kamkeel.npcs.network.AbstractPacket;
+import kamkeel.npcs.network.PacketChannel;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.enums.EnumClientPacket;
+import kamkeel.npcs.network.enums.EnumSoundOperation;
+import kamkeel.npcs.util.ByteBufUtils;
+import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.nbt.NBTTagCompound;
+import noppes.npcs.Server;
+import noppes.npcs.client.controllers.MusicController;
+import noppes.npcs.client.controllers.ScriptClientSound;
+import noppes.npcs.client.controllers.ScriptSoundController;
+
+import java.io.IOException;
+
+public final class SoundManagementPacket extends AbstractPacket {
+ private EnumSoundOperation operation;
+ private String soundName;
+ private float x, y, z;
+ private NBTTagCompound nbt;
+ private int soundId;
+
+ public SoundManagementPacket() {}
+
+ public SoundManagementPacket(EnumSoundOperation operation) {
+ this.operation = operation;
+ }
+
+ public SoundManagementPacket(EnumSoundOperation operation, String soundName) {
+ this.operation = operation;
+ this.soundName = soundName;
+ }
+
+ public SoundManagementPacket(EnumSoundOperation operation, String soundName, float x, float y, float z) {
+ this.operation = operation;
+ this.soundName = soundName;
+ this.x = x;
+ this.y = y;
+ this.z = z;
+ }
+
+ public SoundManagementPacket(EnumSoundOperation operation, int soundId, NBTTagCompound nbt) {
+ this.operation = operation;
+ this.soundId = soundId;
+ this.nbt = nbt;
+ }
+
+ public SoundManagementPacket(EnumSoundOperation operation, NBTTagCompound nbt) {
+ this.operation = operation;
+ this.nbt = nbt;
+ }
+
+ public SoundManagementPacket(EnumSoundOperation operation, int soundId) {
+ this.operation = operation;
+ this.soundId = soundId;
+ }
+
+ @Override
+ public Enum getType() {
+ return EnumClientPacket.SOUND;
+ }
+
+ @Override
+ public PacketChannel getChannel() {
+ return PacketHandler.CLIENT_PACKET;
+ }
+
+ @Override
+ public void sendData(ByteBuf out) throws IOException {
+ out.writeInt(operation.ordinal());
+ switch (operation) {
+ case PLAY_MUSIC:
+ case PLAY_SOUND:
+ ByteBufUtils.writeString(out, soundName);
+ if (operation == EnumSoundOperation.PLAY_SOUND) {
+ out.writeFloat(x);
+ out.writeFloat(y);
+ out.writeFloat(z);
+ }
+ break;
+ case PLAY_SOUND_TO:
+ out.writeInt(soundId);
+ ByteBufUtils.writeNBT(out, nbt);
+ break;
+ case PLAY_SOUND_TO_NO_ID:
+ ByteBufUtils.writeNBT(out, nbt);
+ break;
+ case STOP_SOUND_FOR:
+ out.writeInt(soundId);
+ break;
+ default:
+ break;
+ }
+ }
+
+ @SideOnly(Side.CLIENT)
+ @Override
+ public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ EnumSoundOperation operation = EnumSoundOperation.values()[in.readInt()];
+ switch (operation) {
+ case CONTINUE_SOUNDS:
+ ScriptSoundController.Instance.continueAllSounds();
+ break;
+ case PAUSE_SOUNDS:
+ ScriptSoundController.Instance.pauseAllSounds();
+ break;
+ case PLAY_MUSIC:
+ String soundName = ByteBufUtils.readString(in);
+ MusicController.Instance.playMusicBackground(soundName, player, Integer.MAX_VALUE);
+ break;
+ case PLAY_SOUND:
+ String name = ByteBufUtils.readString(in);
+ float x = in.readFloat();
+ float y = in.readFloat();
+ float z = in.readFloat();
+ MusicController.Instance.playSound(name, x, y, z);
+ break;
+ case PLAY_SOUND_TO:
+ int id = in.readInt();
+ NBTTagCompound comp = ByteBufUtils.readNBT(in);
+ ScriptClientSound sound = ScriptClientSound.fromScriptSound(comp, player.worldObj);
+ ScriptSoundController.Instance.playSound(id, sound);
+ break;
+ case PLAY_SOUND_TO_NO_ID:
+ NBTTagCompound tagCompound = ByteBufUtils.readNBT(in);
+ ScriptClientSound soundNoId = ScriptClientSound.fromScriptSound(tagCompound, player.worldObj);
+ ScriptSoundController.Instance.playSound(soundNoId);
+ break;
+ case STOP_SOUND_FOR:
+ int stopID = in.readInt();
+ ScriptSoundController.Instance.stopSound(stopID);
+ break;
+ case STOP_SOUNDS:
+ ScriptSoundController.Instance.stopAllSounds();
+ break;
+ default:
+ break;
+ }
+ }
+}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/StopSoundForPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/StopSoundForPacket.java
deleted file mode 100644
index 1d972d0aa..000000000
--- a/src/main/java/kamkeel/npcs/network/packets/client/StopSoundForPacket.java
+++ /dev/null
@@ -1,42 +0,0 @@
-package kamkeel.npcs.network.packets.client;
-
-import cpw.mods.fml.relauncher.Side;
-import cpw.mods.fml.relauncher.SideOnly;
-import io.netty.buffer.ByteBuf;
-import kamkeel.npcs.network.AbstractPacket;
-import kamkeel.npcs.network.PacketChannel;
-import kamkeel.npcs.network.PacketHandler;
-import kamkeel.npcs.network.enums.EnumClientPacket;
-import net.minecraft.entity.player.EntityPlayer;
-import noppes.npcs.CustomNpcs;
-import noppes.npcs.client.controllers.ScriptSoundController;
-
-import java.io.IOException;
-
-public final class StopSoundForPacket extends AbstractPacket {
- public static final String packetName = "Client|StopSoundFor";
-
- public StopSoundForPacket() {}
-
- @Override
- public Enum getType() {
- return EnumClientPacket.STOP_SOUND_FOR;
- }
-
- @Override
- public PacketChannel getChannel() {
- return PacketHandler.CLIENT_PACKET;
- }
-
- @Override
- public void sendData(ByteBuf out) throws IOException {
- // TODO: Send Packet
- }
-
- @SideOnly(Side.CLIENT)
- @Override
- public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- int soundId = in.readInt();
- ScriptSoundController.Instance.stopSound(soundId);
- }
-}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/StopSoundsPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/StopSoundsPacket.java
deleted file mode 100644
index 384d04cb7..000000000
--- a/src/main/java/kamkeel/npcs/network/packets/client/StopSoundsPacket.java
+++ /dev/null
@@ -1,41 +0,0 @@
-package kamkeel.npcs.network.packets.client;
-
-import cpw.mods.fml.relauncher.Side;
-import cpw.mods.fml.relauncher.SideOnly;
-import io.netty.buffer.ByteBuf;
-import kamkeel.npcs.network.AbstractPacket;
-import kamkeel.npcs.network.PacketChannel;
-import kamkeel.npcs.network.PacketHandler;
-import kamkeel.npcs.network.enums.EnumClientPacket;
-import net.minecraft.entity.player.EntityPlayer;
-import noppes.npcs.CustomNpcs;
-import noppes.npcs.client.controllers.ScriptSoundController;
-
-import java.io.IOException;
-
-public final class StopSoundsPacket extends AbstractPacket {
- public static final String packetName = "Client|StopSounds";
-
- public StopSoundsPacket() {}
-
- @Override
- public Enum getType() {
- return EnumClientPacket.STOP_SOUNDS;
- }
-
- @Override
- public PacketChannel getChannel() {
- return PacketHandler.CLIENT_PACKET;
- }
-
- @Override
- public void sendData(ByteBuf out) throws IOException {
- // TODO: Send Packet
- }
-
- @SideOnly(Side.CLIENT)
- @Override
- public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- ScriptSoundController.Instance.stopAllSounds();
- }
-}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/ScriptOverlayClosePacket.java b/src/main/java/kamkeel/npcs/network/packets/client/script/ScriptOverlayClosePacket.java
similarity index 93%
rename from src/main/java/kamkeel/npcs/network/packets/client/ScriptOverlayClosePacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/script/ScriptOverlayClosePacket.java
index 145de9c51..a7a6325b8 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/ScriptOverlayClosePacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/script/ScriptOverlayClosePacket.java
@@ -1,4 +1,4 @@
-package kamkeel.npcs.network.packets.client;
+package kamkeel.npcs.network.packets.client.script;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
@@ -8,7 +8,6 @@ import kamkeel.npcs.network.PacketChannel;
import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.entity.player.EntityPlayer;
-import noppes.npcs.CustomNpcs;
import noppes.npcs.client.ClientCacheHandler;
import java.io.IOException;
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/ScriptOverlayDataPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/script/ScriptOverlayDataPacket.java
similarity index 94%
rename from src/main/java/kamkeel/npcs/network/packets/client/ScriptOverlayDataPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/script/ScriptOverlayDataPacket.java
index 936549389..c435e1ae1 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/ScriptOverlayDataPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/script/ScriptOverlayDataPacket.java
@@ -1,4 +1,4 @@
-package kamkeel.npcs.network.packets.client;
+package kamkeel.npcs.network.packets.client.script;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
@@ -9,7 +9,6 @@ import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.client.Minecraft;
import net.minecraft.entity.player.EntityPlayer;
-import noppes.npcs.CustomNpcs;
import noppes.npcs.Server;
import noppes.npcs.client.gui.customoverlay.OverlayCustom;
import noppes.npcs.client.ClientCacheHandler;
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/ScriptedParticlePacket.java b/src/main/java/kamkeel/npcs/network/packets/client/script/ScriptedParticlePacket.java
similarity index 98%
rename from src/main/java/kamkeel/npcs/network/packets/client/ScriptedParticlePacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/script/ScriptedParticlePacket.java
index 9e08af69a..a1aab8fa1 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/ScriptedParticlePacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/script/ScriptedParticlePacket.java
@@ -1,4 +1,4 @@
-package kamkeel.npcs.network.packets.client;
+package kamkeel.npcs.network.packets.client.script;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/sound/ContinueSoundsPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/sound/ContinueSoundsPacket.java
deleted file mode 100644
index 8c7f54a52..000000000
--- a/src/main/java/kamkeel/npcs/network/packets/client/sound/ContinueSoundsPacket.java
+++ /dev/null
@@ -1,41 +0,0 @@
-package kamkeel.npcs.network.packets.client.sound;
-
-import cpw.mods.fml.relauncher.Side;
-import cpw.mods.fml.relauncher.SideOnly;
-import io.netty.buffer.ByteBuf;
-import kamkeel.npcs.network.AbstractPacket;
-import kamkeel.npcs.network.PacketChannel;
-import kamkeel.npcs.network.PacketHandler;
-import kamkeel.npcs.network.enums.EnumClientPacket;
-import net.minecraft.entity.player.EntityPlayer;
-import noppes.npcs.CustomNpcs;
-import noppes.npcs.client.controllers.ScriptSoundController;
-
-import java.io.IOException;
-
-public final class ContinueSoundsPacket extends AbstractPacket {
- public static final String packetName = "Client|ContinueSounds";
-
- public ContinueSoundsPacket() {}
-
- @Override
- public Enum getType() {
- return EnumClientPacket.CONTINUE_SOUNDS;
- }
-
- @Override
- public PacketChannel getChannel() {
- return PacketHandler.CLIENT_PACKET;
- }
-
- @Override
- public void sendData(ByteBuf out) throws IOException {
- // TODO: Send Packet
- }
-
- @SideOnly(Side.CLIENT)
- @Override
- public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- ScriptSoundController.Instance.continueAllSounds();
- }
-}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/sound/PauseSoundsPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/sound/PauseSoundsPacket.java
deleted file mode 100644
index e80ff0970..000000000
--- a/src/main/java/kamkeel/npcs/network/packets/client/sound/PauseSoundsPacket.java
+++ /dev/null
@@ -1,41 +0,0 @@
-package kamkeel.npcs.network.packets.client.sound;
-
-import cpw.mods.fml.relauncher.Side;
-import cpw.mods.fml.relauncher.SideOnly;
-import io.netty.buffer.ByteBuf;
-import kamkeel.npcs.network.AbstractPacket;
-import kamkeel.npcs.network.PacketChannel;
-import kamkeel.npcs.network.PacketHandler;
-import kamkeel.npcs.network.enums.EnumClientPacket;
-import net.minecraft.entity.player.EntityPlayer;
-import noppes.npcs.CustomNpcs;
-import noppes.npcs.client.controllers.ScriptSoundController;
-
-import java.io.IOException;
-
-public final class PauseSoundsPacket extends AbstractPacket {
- public static final String packetName = "Client|PauseSounds";
-
- public PauseSoundsPacket() {}
-
- @Override
- public Enum getType() {
- return EnumClientPacket.PAUSE_SOUNDS;
- }
-
- @Override
- public PacketChannel getChannel() {
- return PacketHandler.CLIENT_PACKET;
- }
-
- @Override
- public void sendData(ByteBuf out) throws IOException {
- // TODO: Send Packet
- }
-
- @SideOnly(Side.CLIENT)
- @Override
- public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- ScriptSoundController.Instance.pauseAllSounds();
- }
-}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/sound/PlayMusicPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/sound/PlayMusicPacket.java
deleted file mode 100644
index 488f0a0db..000000000
--- a/src/main/java/kamkeel/npcs/network/packets/client/sound/PlayMusicPacket.java
+++ /dev/null
@@ -1,43 +0,0 @@
-package kamkeel.npcs.network.packets.client.sound;
-
-import cpw.mods.fml.relauncher.Side;
-import cpw.mods.fml.relauncher.SideOnly;
-import io.netty.buffer.ByteBuf;
-import kamkeel.npcs.network.AbstractPacket;
-import kamkeel.npcs.network.PacketChannel;
-import kamkeel.npcs.network.PacketHandler;
-import kamkeel.npcs.network.enums.EnumClientPacket;
-import net.minecraft.entity.player.EntityPlayer;
-import noppes.npcs.CustomNpcs;
-import noppes.npcs.Server;
-import noppes.npcs.client.controllers.MusicController;
-
-import java.io.IOException;
-
-public final class PlayMusicPacket extends AbstractPacket {
- public static final String packetName = "Client|PlayMusic";
-
- public PlayMusicPacket() {}
-
- @Override
- public Enum getType() {
- return EnumClientPacket.PLAY_MUSIC;
- }
-
- @Override
- public PacketChannel getChannel() {
- return PacketHandler.CLIENT_PACKET;
- }
-
- @Override
- public void sendData(ByteBuf out) throws IOException {
- // TODO: Send Packet
- }
-
- @SideOnly(Side.CLIENT)
- @Override
- public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- String musicName = Server.readString(in);
- MusicController.Instance.playMusicBackground(musicName, player, Integer.MAX_VALUE);
- }
-}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/sound/PlaySoundPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/sound/PlaySoundPacket.java
deleted file mode 100644
index bbee638d3..000000000
--- a/src/main/java/kamkeel/npcs/network/packets/client/sound/PlaySoundPacket.java
+++ /dev/null
@@ -1,46 +0,0 @@
-package kamkeel.npcs.network.packets.client.sound;
-
-import cpw.mods.fml.relauncher.Side;
-import cpw.mods.fml.relauncher.SideOnly;
-import io.netty.buffer.ByteBuf;
-import kamkeel.npcs.network.AbstractPacket;
-import kamkeel.npcs.network.PacketChannel;
-import kamkeel.npcs.network.PacketHandler;
-import kamkeel.npcs.network.enums.EnumClientPacket;
-import net.minecraft.entity.player.EntityPlayer;
-import noppes.npcs.CustomNpcs;
-import noppes.npcs.Server;
-import noppes.npcs.client.controllers.MusicController;
-
-import java.io.IOException;
-
-public final class PlaySoundPacket extends AbstractPacket {
- public static final String packetName = "Client|PlaySound";
-
- public PlaySoundPacket() {}
-
- @Override
- public Enum getType() {
- return EnumClientPacket.PLAY_SOUND;
- }
-
- @Override
- public PacketChannel getChannel() {
- return PacketHandler.CLIENT_PACKET;
- }
-
- @Override
- public void sendData(ByteBuf out) throws IOException {
- // TODO: Send Packet
- }
-
- @SideOnly(Side.CLIENT)
- @Override
- public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- String soundName = Server.readString(in);
- float x = in.readFloat();
- float y = in.readFloat();
- float z = in.readFloat();
- MusicController.Instance.playSound(soundName, x, y, z);
- }
-}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/sound/PlaySoundToNoIdPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/sound/PlaySoundToNoIdPacket.java
deleted file mode 100644
index a82b687e6..000000000
--- a/src/main/java/kamkeel/npcs/network/packets/client/sound/PlaySoundToNoIdPacket.java
+++ /dev/null
@@ -1,46 +0,0 @@
-package kamkeel.npcs.network.packets.client.sound;
-
-import cpw.mods.fml.relauncher.Side;
-import cpw.mods.fml.relauncher.SideOnly;
-import io.netty.buffer.ByteBuf;
-import kamkeel.npcs.network.AbstractPacket;
-import kamkeel.npcs.network.PacketChannel;
-import kamkeel.npcs.network.PacketHandler;
-import kamkeel.npcs.network.enums.EnumClientPacket;
-import net.minecraft.entity.player.EntityPlayer;
-import net.minecraft.nbt.NBTTagCompound;
-import noppes.npcs.CustomNpcs;
-import noppes.npcs.Server;
-import noppes.npcs.client.controllers.ScriptClientSound;
-import noppes.npcs.client.controllers.ScriptSoundController;
-
-import java.io.IOException;
-
-public final class PlaySoundToNoIdPacket extends AbstractPacket {
- public static final String packetName = "Client|PlaySoundToNoId";
-
- public PlaySoundToNoIdPacket() {}
-
- @Override
- public Enum getType() {
- return EnumClientPacket.PLAY_SOUND_TO_NO_ID;
- }
-
- @Override
- public PacketChannel getChannel() {
- return PacketHandler.CLIENT_PACKET;
- }
-
- @Override
- public void sendData(ByteBuf out) throws IOException {
- // TODO: Send Packet
- }
-
- @SideOnly(Side.CLIENT)
- @Override
- public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- NBTTagCompound nbt = Server.readNBT(in);
- ScriptClientSound sound = ScriptClientSound.fromScriptSound(nbt, player.worldObj);
- ScriptSoundController.Instance.playSound(sound);
- }
-}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/sound/PlaySoundToPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/sound/PlaySoundToPacket.java
deleted file mode 100644
index bc364fbee..000000000
--- a/src/main/java/kamkeel/npcs/network/packets/client/sound/PlaySoundToPacket.java
+++ /dev/null
@@ -1,47 +0,0 @@
-package kamkeel.npcs.network.packets.client.sound;
-
-import cpw.mods.fml.relauncher.Side;
-import cpw.mods.fml.relauncher.SideOnly;
-import io.netty.buffer.ByteBuf;
-import kamkeel.npcs.network.AbstractPacket;
-import kamkeel.npcs.network.PacketChannel;
-import kamkeel.npcs.network.PacketHandler;
-import kamkeel.npcs.network.enums.EnumClientPacket;
-import net.minecraft.entity.player.EntityPlayer;
-import net.minecraft.nbt.NBTTagCompound;
-import noppes.npcs.CustomNpcs;
-import noppes.npcs.Server;
-import noppes.npcs.client.controllers.ScriptClientSound;
-import noppes.npcs.client.controllers.ScriptSoundController;
-
-import java.io.IOException;
-
-public final class PlaySoundToPacket extends AbstractPacket {
- public static final String packetName = "Client|PlaySoundTo";
-
- public PlaySoundToPacket() {}
-
- @Override
- public Enum getType() {
- return EnumClientPacket.PLAY_SOUND_TO;
- }
-
- @Override
- public PacketChannel getChannel() {
- return PacketHandler.CLIENT_PACKET;
- }
-
- @Override
- public void sendData(ByteBuf out) throws IOException {
- // TODO: Send Packet
- }
-
- @SideOnly(Side.CLIENT)
- @Override
- public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- int soundId = in.readInt();
- NBTTagCompound nbt = Server.readNBT(in);
- ScriptClientSound sound = ScriptClientSound.fromScriptSound(nbt, player.worldObj);
- ScriptSoundController.Instance.playSound(soundId, sound);
- }
-}
diff --git a/src/main/java/noppes/npcs/NoppesUtilPlayer.java b/src/main/java/noppes/npcs/NoppesUtilPlayer.java
index 7290bef48..65724ad84 100644
--- a/src/main/java/noppes/npcs/NoppesUtilPlayer.java
+++ b/src/main/java/noppes/npcs/NoppesUtilPlayer.java
@@ -3,6 +3,10 @@ package noppes.npcs;
import cpw.mods.fml.common.network.internal.FMLProxyPacket;
import io.netty.buffer.ByteBuf;
import io.netty.buffer.Unpooled;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.PacketUtil;
+import kamkeel.npcs.network.enums.EnumSoundOperation;
+import kamkeel.npcs.network.packets.client.SoundManagementPacket;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.inventory.Container;
@@ -773,30 +777,30 @@ public class NoppesUtilPlayer {
public static void playSoundTo(EntityPlayerMP player, int id, ScriptSound sound) {
NBTTagCompound compound = sound.writeToNBT();
if (sound.sourceEntity == null || player.worldObj.provider.dimensionId == sound.sourceEntity.getDimension()) {
- Server.sendData(player, EnumPacketClient.PLAY_SOUND_TO, id, compound);
+ PacketHandler.Instance.sendToPlayer(new SoundManagementPacket(EnumSoundOperation.PLAY_SOUND_TO, id, compound), player);
}
}
public static void playSoundTo(EntityPlayerMP player, ScriptSound sound) {
NBTTagCompound compound = sound.writeToNBT();
if (sound.sourceEntity == null || player.worldObj.provider.dimensionId == sound.sourceEntity.getDimension()) {
- Server.sendData(player, EnumPacketClient.PLAY_SOUND_TO_NO_ID, compound);
+ PacketHandler.Instance.sendToPlayer(new SoundManagementPacket(EnumSoundOperation.PLAY_SOUND_TO_NO_ID, compound), player);
}
}
public static void stopSoundFor(EntityPlayerMP player, int id) {
- Server.sendData(player, EnumPacketClient.STOP_SOUND_FOR, id);
+ PacketHandler.Instance.sendToPlayer(new SoundManagementPacket(EnumSoundOperation.STOP_SOUND_FOR, id), player);
}
public static void pauseSoundsFor(EntityPlayerMP player) {
- Server.sendData(player, EnumPacketClient.PAUSE_SOUNDS);
+ PacketHandler.Instance.sendToPlayer(new SoundManagementPacket(EnumSoundOperation.PAUSE_SOUNDS), player);
}
public static void continueSoundsFor(EntityPlayerMP player) {
- Server.sendData(player, EnumPacketClient.CONTINUE_SOUNDS);
+ PacketHandler.Instance.sendToPlayer(new SoundManagementPacket(EnumSoundOperation.CONTINUE_SOUNDS), player);
}
public static void stopSoundsFor(EntityPlayerMP player) {
- Server.sendData(player, EnumPacketClient.STOP_SOUNDS);
+ PacketHandler.Instance.sendToPlayer(new SoundManagementPacket(EnumSoundOperation.STOP_SOUNDS), player);
}
}
diff --git a/src/main/java/noppes/npcs/NoppesUtilServer.java b/src/main/java/noppes/npcs/NoppesUtilServer.java
index 04b46d069..bdd8978c8 100644
--- a/src/main/java/noppes/npcs/NoppesUtilServer.java
+++ b/src/main/java/noppes/npcs/NoppesUtilServer.java
@@ -6,7 +6,7 @@ import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.PacketUtil;
import kamkeel.npcs.network.packets.client.DialogPacket;
import kamkeel.npcs.network.packets.client.ParticlePacket;
-import kamkeel.npcs.network.packets.client.ScriptedParticlePacket;
+import kamkeel.npcs.network.packets.client.script.ScriptedParticlePacket;
import kamkeel.npcs.network.packets.client.npc.DeleteNpcPacket;
import kamkeel.npcs.network.packets.client.npc.EditNpcPacket;
import kamkeel.npcs.network.packets.client.RolePacket;
@@ -37,7 +37,6 @@ import net.minecraft.world.World;
import noppes.npcs.api.entity.IPlayer;
import noppes.npcs.config.ConfigMain;
import noppes.npcs.constants.EnumGuiType;
-import noppes.npcs.constants.EnumPacketClient;
import noppes.npcs.constants.EnumPlayerData;
import noppes.npcs.constants.EnumRoleType;
import noppes.npcs.containers.ContainerManageBanks;
diff --git a/src/main/java/noppes/npcs/ServerEventsHandler.java b/src/main/java/noppes/npcs/ServerEventsHandler.java
index f67759ed5..7b01dd466 100644
--- a/src/main/java/noppes/npcs/ServerEventsHandler.java
+++ b/src/main/java/noppes/npcs/ServerEventsHandler.java
@@ -3,6 +3,9 @@ package noppes.npcs;
import cpw.mods.fml.common.FMLCommonHandler;
import cpw.mods.fml.common.eventhandler.SubscribeEvent;
import cpw.mods.fml.relauncher.Side;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.enums.EnumSoundOperation;
+import kamkeel.npcs.network.packets.client.SoundManagementPacket;
import net.minecraft.block.Block;
import net.minecraft.entity.Entity;
import net.minecraft.entity.EntityList;
@@ -327,7 +330,7 @@ public class ServerEventsHandler {
ItemStack item = player.getCurrentEquippedItem();
if(item == null || item.getItem() != CustomItems.excalibur)
return;
- Server.sendData((EntityPlayerMP)player, EnumPacketClient.PLAY_MUSIC, "customnpcs:songs.excalibur");
+ PacketHandler.Instance.sendToPlayer(new SoundManagementPacket(EnumSoundOperation.PLAY_MUSIC, "customnpcs:songs.excalibur"), (EntityPlayerMP)player);
player.addChatMessage(new ChatComponentTranslation("<" + StatCollector.translateToLocal(item.getItem().getUnlocalizedName() + ".name") + "> " + ItemExcalibur.quotes[player.getRNG().nextInt(ItemExcalibur.quotes.length)]));
}
diff --git a/src/main/java/noppes/npcs/client/PacketHandlerClient.java b/src/main/java/noppes/npcs/client/PacketHandlerClient.java
index d6c4c0f7a..c3c41c549 100644
--- a/src/main/java/noppes/npcs/client/PacketHandlerClient.java
+++ b/src/main/java/noppes/npcs/client/PacketHandlerClient.java
@@ -98,12 +98,6 @@ public class PacketHandlerClient extends PacketHandlerServer{
return;
NoppesUtil.setLastNpc((EntityNPCInterface) entity);
}
- else if(type == EnumPacketClient.PLAY_MUSIC){
- MusicController.Instance.playMusicBackground(Server.readString(buffer), player, Integer.MAX_VALUE);
- }
- else if(type == EnumPacketClient.PLAY_SOUND){
- MusicController.Instance.playSound(Server.readString(buffer),buffer.readFloat(),buffer.readFloat(),buffer.readFloat());
- }
else if(type == EnumPacketClient.UPDATE_NPC){
NBTTagCompound compound = Server.readNBT(buffer);
Entity entity = Minecraft.getMinecraft().theWorld.getEntityByID(compound.getInteger("EntityId"));
@@ -305,31 +299,6 @@ public class PacketHandlerClient extends PacketHandlerServer{
}
} catch (Exception ignored) {}
}
- else if(type == EnumPacketClient.PLAY_SOUND_TO) {
- int id = buffer.readInt();
- NBTTagCompound compound = Server.readNBT(buffer);
- ScriptClientSound sound = ScriptClientSound.fromScriptSound(compound, player.worldObj);
-
- ScriptSoundController.Instance.playSound(id,sound);
- }
- else if(type == EnumPacketClient.PLAY_SOUND_TO_NO_ID) {
- NBTTagCompound compound = Server.readNBT(buffer);
- ScriptClientSound sound = ScriptClientSound.fromScriptSound(compound, player.worldObj);
- ScriptSoundController.Instance.playSound(sound);
- }
- else if(type == EnumPacketClient.STOP_SOUND_FOR) {
- int id = buffer.readInt();
- ScriptSoundController.Instance.stopSound(id);
- }
- else if(type == EnumPacketClient.PAUSE_SOUNDS) {
- ScriptSoundController.Instance.pauseAllSounds();
- }
- else if(type == EnumPacketClient.CONTINUE_SOUNDS) {
- ScriptSoundController.Instance.continueAllSounds();
- }
- else if(type == EnumPacketClient.STOP_SOUNDS) {
- ScriptSoundController.Instance.stopAllSounds();
- }
else if(type == EnumPacketClient.SYNC_WEAPON) {
Entity entity = Minecraft.getMinecraft().theWorld.getEntityByID(buffer.readInt());
if(!(entity instanceof EntityNPCInterface))
diff --git a/src/main/java/noppes/npcs/constants/EnumPacketClient.java b/src/main/java/noppes/npcs/constants/EnumPacketClient.java
index 34b1a9934..22992e872 100644
--- a/src/main/java/noppes/npcs/constants/EnumPacketClient.java
+++ b/src/main/java/noppes/npcs/constants/EnumPacketClient.java
@@ -7,8 +7,6 @@ public enum EnumPacketClient {
DIALOG,
QUEST_COMPLETION,
EDIT_NPC,
- PLAY_SOUND,
- PLAY_MUSIC,
UPDATE_NPC,
ROLE,
GUI,
@@ -34,12 +32,6 @@ public enum EnumPacketClient {
UPDATE_ANIMATIONS,
OVERLAY_QUEST_TRACKING,
DISABLE_MOUSE_INPUT,
- PLAY_SOUND_TO,
- PLAY_SOUND_TO_NO_ID,
- STOP_SOUND_FOR,
- PAUSE_SOUNDS,
- CONTINUE_SOUNDS,
- STOP_SOUNDS,
SYNC_WEAPON,
MARK_DATA,
SYNC_CONFIG,
diff --git a/src/main/java/noppes/npcs/entity/EntityNPCInterface.java b/src/main/java/noppes/npcs/entity/EntityNPCInterface.java
index 1a222c915..ba49853bd 100644
--- a/src/main/java/noppes/npcs/entity/EntityNPCInterface.java
+++ b/src/main/java/noppes/npcs/entity/EntityNPCInterface.java
@@ -8,7 +8,9 @@ import io.netty.buffer.ByteBuf;
import kamkeel.npcs.addon.DBCAddon;
import kamkeel.npcs.addon.client.DBCClient;
import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.enums.EnumSoundOperation;
import kamkeel.npcs.network.packets.client.ChatBubblePacket;
+import kamkeel.npcs.network.packets.client.SoundManagementPacket;
import net.minecraft.block.Block;
import net.minecraft.block.material.Material;
import net.minecraft.client.Minecraft;
@@ -1022,9 +1024,8 @@ public abstract class EntityNPCInterface extends EntityCreature implements IEnti
return;
if(!line.getSound().isEmpty()){
- Server.sendData((EntityPlayerMP)player, EnumPacketClient.PLAY_SOUND, line.getSound(), (float)posX, (float)posY, (float)posZ);
- }
-
+ PacketHandler.Instance.sendToPlayer(new SoundManagementPacket(EnumSoundOperation.PLAY_SOUND, line.getSound(), (float)posX, (float)posY, (float)posZ), (EntityPlayerMP)player);
+ }
PacketHandler.Instance.sendToPlayer(new ChatBubblePacket(this.getEntityId(), line.getText(), !line.hideText()), (EntityPlayerMP)player);
}
public boolean getAlwaysRenderNameTagForRender(){
From 90605ee808e9c83bc1466918e16efae7f3fc73d1 Mon Sep 17 00:00:00 2001
From: Kam
Date: Thu, 30 Jan 2025 01:44:45 -0500
Subject: [PATCH 024/357] ok
---
src/main/java/kamkeel/npcs/controllers/SyncMaster.java | 2 +-
src/main/java/kamkeel/npcs/network/PacketHandler.java | 3 ++-
.../packets/client/large/{sync => }/LargeSyncPacket.java | 5 +----
3 files changed, 4 insertions(+), 6 deletions(-)
rename src/main/java/kamkeel/npcs/network/packets/client/large/{sync => }/LargeSyncPacket.java (95%)
diff --git a/src/main/java/kamkeel/npcs/controllers/SyncMaster.java b/src/main/java/kamkeel/npcs/controllers/SyncMaster.java
index 3b166459e..af1bcad98 100644
--- a/src/main/java/kamkeel/npcs/controllers/SyncMaster.java
+++ b/src/main/java/kamkeel/npcs/controllers/SyncMaster.java
@@ -4,7 +4,7 @@ import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import kamkeel.npcs.addon.DBCAddon;
import kamkeel.npcs.network.PacketHandler;
-import kamkeel.npcs.network.packets.client.large.sync.LargeSyncPacket;
+import kamkeel.npcs.network.packets.client.large.LargeSyncPacket;
import kamkeel.npcs.network.enums.EnumSyncAction;
import kamkeel.npcs.network.enums.EnumSyncType;
import net.minecraft.entity.player.EntityPlayerMP;
diff --git a/src/main/java/kamkeel/npcs/network/PacketHandler.java b/src/main/java/kamkeel/npcs/network/PacketHandler.java
index 90da65178..c65ae3d00 100644
--- a/src/main/java/kamkeel/npcs/network/PacketHandler.java
+++ b/src/main/java/kamkeel/npcs/network/PacketHandler.java
@@ -12,7 +12,7 @@ import kamkeel.npcs.network.packets.client.gui.*;
import kamkeel.npcs.network.packets.client.large.LargeScrollDataPacket;
import kamkeel.npcs.network.packets.client.large.LargeScrollGroupPacket;
import kamkeel.npcs.network.packets.client.large.LargeScrollListPacket;
-import kamkeel.npcs.network.packets.client.large.sync.LargeSyncPacket;
+import kamkeel.npcs.network.packets.client.large.LargeSyncPacket;
import kamkeel.npcs.network.packets.client.npc.DeleteNpcPacket;
import kamkeel.npcs.network.packets.client.npc.EditNpcPacket;
import kamkeel.npcs.network.packets.client.script.ScriptedParticlePacket;
@@ -59,6 +59,7 @@ public final class PacketHandler {
CLIENT_PACKET.registerPacket(new EditNpcPacket());
CLIENT_PACKET.registerPacket(new RolePacket());
CLIENT_PACKET.registerPacket(new GuiTeleporterPacket());
+ CLIENT_PACKET.registerPacket(new SoundManagementPacket());
// Client | GUI Packets
CLIENT_PACKET.registerPacket(new GuiClosePacket());
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/large/sync/LargeSyncPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/large/LargeSyncPacket.java
similarity index 95%
rename from src/main/java/kamkeel/npcs/network/packets/client/large/sync/LargeSyncPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/large/LargeSyncPacket.java
index 250fdfca2..2ce8f59e9 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/large/sync/LargeSyncPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/large/LargeSyncPacket.java
@@ -1,4 +1,4 @@
-package kamkeel.npcs.network.packets.client.large.sync;
+package kamkeel.npcs.network.packets.client.large;
import cpw.mods.fml.relauncher.Side;
import io.netty.buffer.ByteBuf;
@@ -12,12 +12,9 @@ import kamkeel.npcs.network.enums.EnumSyncAction;
import kamkeel.npcs.network.enums.EnumSyncType;
import kamkeel.npcs.util.ByteBufUtils;
import net.minecraft.entity.player.EntityPlayer;
-import net.minecraft.nbt.CompressedStreamTools;
import net.minecraft.nbt.NBTTagCompound;
import noppes.npcs.CustomNpcs;
-import java.io.ByteArrayOutputStream;
-import java.io.DataOutputStream;
import java.io.IOException;
/**
From 5d308b1f564343f39a79b1f4b67be74538880c00 Mon Sep 17 00:00:00 2001
From: Kam
Date: Thu, 30 Jan 2025 09:22:43 -0500
Subject: [PATCH 025/357] Sync Recipes
---
src/main/java/foxz/command/CmdConfig.java | 5 +-
src/main/java/foxz/command/CmdDialog.java | 1 -
.../kamkeel/npcs/command/ConfigCommand.java | 6 +-
.../kamkeel/npcs/command/DialogCommand.java | 1 -
.../kamkeel/npcs/controllers/SyncMaster.java | 89 +++++++++++++++++++
.../kamkeel/npcs/network/PacketHandler.java | 7 +-
.../network/enums/EnumConfigOperation.java | 5 ++
.../npcs/network/enums/EnumSyncType.java | 4 +-
.../packets/client/ConfigCommandPacket.java | 19 +++-
.../packets/client/sync/SyncConfigPacket.java | 2 -
.../sync/SyncRecipesCarpentryBenchPacket.java | 3 +-
.../java/noppes/npcs/NoppesUtilServer.java | 2 +-
.../java/noppes/npcs/ServerEventsHandler.java | 59 ++++--------
.../java/noppes/npcs/ServerTickHandler.java | 1 -
.../npcs/client/PacketHandlerClient.java | 71 +--------------
.../gui/player/GuiNpcCarpentryBench.java | 4 +-
.../npcs/client/gui/player/GuiRecipes.java | 18 ++--
.../npcs/constants/EnumPacketClient.java | 7 --
.../npcs/controllers/RecipeController.java | 35 +++++---
.../npcs/controllers/SyncController.java | 25 ------
20 files changed, 174 insertions(+), 190 deletions(-)
create mode 100644 src/main/java/kamkeel/npcs/network/enums/EnumConfigOperation.java
delete mode 100644 src/main/java/noppes/npcs/controllers/SyncController.java
diff --git a/src/main/java/foxz/command/CmdConfig.java b/src/main/java/foxz/command/CmdConfig.java
index d947513b0..e712fa4ca 100644
--- a/src/main/java/foxz/command/CmdConfig.java
+++ b/src/main/java/foxz/command/CmdConfig.java
@@ -5,6 +5,9 @@ import foxz.commandhelper.annotations.Command;
import foxz.commandhelper.annotations.SubCommand;
import foxz.commandhelper.permissions.OpOnly;
import foxz.commandhelper.permissions.PlayerOnly;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.enums.EnumConfigOperation;
+import kamkeel.npcs.network.packets.client.ConfigCommandPacket;
import net.minecraft.block.Block;
import net.minecraft.block.BlockIce;
import net.minecraft.block.BlockLeavesBase;
@@ -207,6 +210,6 @@ public class CmdConfig extends ChMcLogger {
for(int i = 0; i < args.length; i++){
font += " " + args[i];
}
- Server.sendData((EntityPlayerMP)this.pcParam, EnumPacketClient.CONFIG, 0, font.trim(), size);
+ PacketHandler.Instance.sendToPlayer(new ConfigCommandPacket(EnumConfigOperation.FONT, font.trim(), size), (EntityPlayerMP)this.pcParam);
}
}
diff --git a/src/main/java/foxz/command/CmdDialog.java b/src/main/java/foxz/command/CmdDialog.java
index 6dfa15a4f..842611930 100644
--- a/src/main/java/foxz/command/CmdDialog.java
+++ b/src/main/java/foxz/command/CmdDialog.java
@@ -11,7 +11,6 @@ import net.minecraft.entity.player.EntityPlayer;
import noppes.npcs.NoppesUtilServer;
import noppes.npcs.client.EntityUtil;
import noppes.npcs.controllers.DialogController;
-import noppes.npcs.controllers.SyncController;
import noppes.npcs.controllers.data.Dialog;
import noppes.npcs.controllers.data.DialogOption;
import noppes.npcs.controllers.data.PlayerData;
diff --git a/src/main/java/kamkeel/npcs/command/ConfigCommand.java b/src/main/java/kamkeel/npcs/command/ConfigCommand.java
index 89d22db44..0459e469a 100644
--- a/src/main/java/kamkeel/npcs/command/ConfigCommand.java
+++ b/src/main/java/kamkeel/npcs/command/ConfigCommand.java
@@ -1,6 +1,9 @@
package kamkeel.npcs.command;
import foxz.utils.Market;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.enums.EnumConfigOperation;
+import kamkeel.npcs.network.packets.client.ConfigCommandPacket;
import net.minecraft.block.Block;
import net.minecraft.block.BlockIce;
import net.minecraft.block.BlockLeavesBase;
@@ -291,8 +294,7 @@ public class ConfigCommand extends CommandKamkeelBase {
for(int i = 0; i < args.length; i++){
font += " " + args[i];
}
- Server.sendData((EntityPlayerMP)sender, EnumPacketClient.CONFIG, 0, font.trim(), size);
+ PacketHandler.Instance.sendToPlayer(new ConfigCommandPacket(EnumConfigOperation.FONT, font.trim(), size), (EntityPlayerMP)sender);
}
-
}
diff --git a/src/main/java/kamkeel/npcs/command/DialogCommand.java b/src/main/java/kamkeel/npcs/command/DialogCommand.java
index c139e9b09..d89311880 100644
--- a/src/main/java/kamkeel/npcs/command/DialogCommand.java
+++ b/src/main/java/kamkeel/npcs/command/DialogCommand.java
@@ -11,7 +11,6 @@ import noppes.npcs.constants.EnumAvailabilityDialog;
import noppes.npcs.constants.EnumAvailabilityQuest;
import noppes.npcs.controllers.DialogController;
import noppes.npcs.controllers.PlayerDataController;
-import noppes.npcs.controllers.SyncController;
import noppes.npcs.controllers.data.Availability;
import noppes.npcs.controllers.data.Dialog;
import noppes.npcs.controllers.data.DialogOption;
diff --git a/src/main/java/kamkeel/npcs/controllers/SyncMaster.java b/src/main/java/kamkeel/npcs/controllers/SyncMaster.java
index af1bcad98..6f8332934 100644
--- a/src/main/java/kamkeel/npcs/controllers/SyncMaster.java
+++ b/src/main/java/kamkeel/npcs/controllers/SyncMaster.java
@@ -10,10 +10,13 @@ import kamkeel.npcs.network.enums.EnumSyncType;
import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.nbt.NBTTagList;
+import noppes.npcs.Server;
import noppes.npcs.client.ClientCacheHandler;
+import noppes.npcs.constants.EnumPacketClient;
import noppes.npcs.controllers.DialogController;
import noppes.npcs.controllers.FactionController;
import noppes.npcs.controllers.QuestController;
+import noppes.npcs.controllers.RecipeController;
import noppes.npcs.controllers.data.*;
import java.util.HashMap;
@@ -45,10 +48,48 @@ public class SyncMaster {
questCategoriesNBT()
), player);
+ // 4) Workbench Recipes
+ PacketHandler.Instance.sendToPlayer(new LargeSyncPacket(
+ EnumSyncType.WORKBENCH_RECIPES,
+ EnumSyncAction.RELOAD,
+ -1,
+ workbenchNBT()
+ ), player);
+
+ // 5) Carpentry Recipes
+ PacketHandler.Instance.sendToPlayer(new LargeSyncPacket(
+ EnumSyncType.CARPENTRY_RECIPES,
+ EnumSyncAction.RELOAD,
+ -1,
+ carpentryNBT()
+ ), player);
+
DBCAddon.instance.syncPlayer(player);
syncPlayerData(player, false);
}
+ public static NBTTagCompound workbenchNBT(){
+ RecipeController controller = RecipeController.Instance;
+ NBTTagList list = new NBTTagList();
+ NBTTagCompound compound = new NBTTagCompound();
+ for(RecipeCarpentry recipe : controller.globalRecipes.values()){
+ list.appendTag(recipe.writeNBT());
+ }
+ compound.setTag("recipes", list);
+ return compound;
+ }
+
+ public static NBTTagCompound carpentryNBT(){
+ RecipeController controller = RecipeController.Instance;
+ NBTTagList list = new NBTTagList();
+ NBTTagCompound compound = new NBTTagCompound();
+ for(RecipeCarpentry recipe : controller.carpentryRecipes.values()){
+ list.appendTag(recipe.writeNBT());
+ }
+ compound.setTag("recipes", list);
+ return compound;
+ }
+
public static NBTTagCompound factionsNBT(){
NBTTagList list = new NBTTagList();
NBTTagCompound compound = new NBTTagCompound();
@@ -144,6 +185,24 @@ public class SyncMaster {
));
}
+ public static void syncAllWorkbenchRecipes() {
+ PacketHandler.Instance.sendToAll(new LargeSyncPacket(
+ EnumSyncType.WORKBENCH_RECIPES,
+ EnumSyncAction.RELOAD,
+ -1,
+ workbenchNBT()
+ ));
+ }
+
+ public static void syncAllCarpentryRecipes() {
+ PacketHandler.Instance.sendToAll(new LargeSyncPacket(
+ EnumSyncType.CARPENTRY_RECIPES,
+ EnumSyncAction.RELOAD,
+ -1,
+ carpentryNBT()
+ ));
+ }
+
@SideOnly(Side.CLIENT)
public static void clientSync(EnumSyncType enumSyncType, NBTTagCompound fullCompound) {
switch (enumSyncType){
@@ -238,6 +297,36 @@ public class SyncMaster {
ClientCacheHandler.playerData.setSyncNBTFull(fullCompound);
break;
}
+ case WORKBENCH_RECIPES: {
+ NBTTagList list = fullCompound.getTagList("recipes", 10);
+ if(list == null)
+ return;
+
+ for(int i = 0; i < list.tagCount(); i++)
+ {
+ RecipeCarpentry recipe = RecipeCarpentry.read(list.getCompoundTagAt(i));
+ RecipeController.syncRecipes.put(recipe.id,recipe);
+ }
+
+ RecipeController.reloadGlobalRecipes(RecipeController.syncRecipes);
+ RecipeController.syncRecipes = new HashMap();
+ break;
+ }
+ case CARPENTRY_RECIPES: {
+ NBTTagList list = fullCompound.getTagList("recipes", 10);
+ if(list == null)
+ return;
+
+ for(int i = 0; i < list.tagCount(); i++)
+ {
+ RecipeCarpentry recipe = RecipeCarpentry.read(list.getCompoundTagAt(i));
+ RecipeController.syncRecipes.put(recipe.id,recipe);
+ }
+
+ RecipeController.Instance.carpentryRecipes = RecipeController.syncRecipes;
+ RecipeController.syncRecipes = new HashMap();
+ break;
+ }
}
}
diff --git a/src/main/java/kamkeel/npcs/network/PacketHandler.java b/src/main/java/kamkeel/npcs/network/PacketHandler.java
index c65ae3d00..c3bf6b871 100644
--- a/src/main/java/kamkeel/npcs/network/PacketHandler.java
+++ b/src/main/java/kamkeel/npcs/network/PacketHandler.java
@@ -60,6 +60,9 @@ public final class PacketHandler {
CLIENT_PACKET.registerPacket(new RolePacket());
CLIENT_PACKET.registerPacket(new GuiTeleporterPacket());
CLIENT_PACKET.registerPacket(new SoundManagementPacket());
+ CLIENT_PACKET.registerPacket(new ParticlePacket());
+ CLIENT_PACKET.registerPacket(new ScriptedParticlePacket());
+ CLIENT_PACKET.registerPacket(new ConfigCommandPacket());
// Client | GUI Packets
CLIENT_PACKET.registerPacket(new GuiClosePacket());
@@ -70,10 +73,6 @@ public final class PacketHandler {
// Client | NPC Packets
CLIENT_PACKET.registerPacket(new DeleteNpcPacket());
-
- // Client | Other
- CLIENT_PACKET.registerPacket(new ParticlePacket());
- CLIENT_PACKET.registerPacket(new ScriptedParticlePacket());
}
private void registerChannels() {
diff --git a/src/main/java/kamkeel/npcs/network/enums/EnumConfigOperation.java b/src/main/java/kamkeel/npcs/network/enums/EnumConfigOperation.java
new file mode 100644
index 000000000..d210c00a9
--- /dev/null
+++ b/src/main/java/kamkeel/npcs/network/enums/EnumConfigOperation.java
@@ -0,0 +1,5 @@
+package kamkeel.npcs.network.enums;
+
+public enum EnumConfigOperation {
+ FONT,
+}
diff --git a/src/main/java/kamkeel/npcs/network/enums/EnumSyncType.java b/src/main/java/kamkeel/npcs/network/enums/EnumSyncType.java
index e66957598..e573f5346 100644
--- a/src/main/java/kamkeel/npcs/network/enums/EnumSyncType.java
+++ b/src/main/java/kamkeel/npcs/network/enums/EnumSyncType.java
@@ -7,5 +7,7 @@ public enum EnumSyncType {
QUEST,
QUEST_CATEGORY,
PLAYERDATA,
- MAGIC
+ MAGIC,
+ WORKBENCH_RECIPES,
+ CARPENTRY_RECIPES
}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/ConfigCommandPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/ConfigCommandPacket.java
index cb85e4f28..506e8032e 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/ConfigCommandPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/ConfigCommandPacket.java
@@ -7,6 +7,8 @@ import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.enums.EnumClientPacket;
+import kamkeel.npcs.network.enums.EnumConfigOperation;
+import kamkeel.npcs.util.ByteBufUtils;
import net.minecraft.entity.player.EntityPlayer;
import noppes.npcs.CustomNpcs;
import noppes.npcs.Server;
@@ -20,8 +22,16 @@ import java.io.IOException;
public final class ConfigCommandPacket extends AbstractPacket {
public static final String packetName = "Client|ConfigCommand";
+ private EnumConfigOperation configOperation;
+ private Object[] objects;
+
public ConfigCommandPacket() {}
+ public ConfigCommandPacket(EnumConfigOperation operation, Object... obs) {
+ this.configOperation = operation;
+ this.objects = obs;
+ }
+
@Override
public Enum getType() {
return EnumClientPacket.CONFIG;
@@ -34,15 +44,16 @@ public final class ConfigCommandPacket extends AbstractPacket {
@Override
public void sendData(ByteBuf out) throws IOException {
- // TODO: Send Packet
+ out.writeInt(this.configOperation.ordinal());
+ ByteBufUtils.fillBuffer(out, objects);
}
@SideOnly(Side.CLIENT)
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- int configType = in.readInt();
- if (configType == 0) { // Font Configuration
- String font = Server.readString(in);
+ EnumConfigOperation configType = EnumConfigOperation.values()[in.readInt()];
+ if (configType == EnumConfigOperation.FONT) { // Font Configuration
+ String font = ByteBufUtils.readString(in);
int size = in.readInt();
if (!font.isEmpty()) {
ConfigClient.FontType = font;
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncConfigPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncConfigPacket.java
index b27bc4dd9..f1e6ad99f 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncConfigPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncConfigPacket.java
@@ -9,9 +9,7 @@ import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.nbt.NBTTagCompound;
-import noppes.npcs.CustomNpcs;
import noppes.npcs.Server;
-import noppes.npcs.controllers.SyncController;
import java.io.IOException;
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncRecipesCarpentryBenchPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncRecipesCarpentryBenchPacket.java
index d30ca5643..c82b39987 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncRecipesCarpentryBenchPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncRecipesCarpentryBenchPacket.java
@@ -8,7 +8,6 @@ import kamkeel.npcs.network.PacketChannel;
import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.entity.player.EntityPlayer;
-import noppes.npcs.CustomNpcs;
import noppes.npcs.controllers.RecipeController;
import java.io.IOException;
@@ -36,7 +35,7 @@ public final class SyncRecipesCarpentryBenchPacket extends AbstractPacket {
@SideOnly(Side.CLIENT)
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- RecipeController.Instance.anvilRecipes = RecipeController.syncRecipes;
+ RecipeController.Instance.carpentryRecipes = RecipeController.syncRecipes;
RecipeController.syncRecipes.clear();
}
}
diff --git a/src/main/java/noppes/npcs/NoppesUtilServer.java b/src/main/java/noppes/npcs/NoppesUtilServer.java
index bdd8978c8..56f6cbf05 100644
--- a/src/main/java/noppes/npcs/NoppesUtilServer.java
+++ b/src/main/java/noppes/npcs/NoppesUtilServer.java
@@ -591,7 +591,7 @@ public class NoppesUtilServer {
}
}
else{
- for(RecipeCarpentry recipe : RecipeController.Instance.anvilRecipes.values()){
+ for(RecipeCarpentry recipe : RecipeController.Instance.carpentryRecipes.values()){
map.put(recipe.name, recipe.id);
}
}
diff --git a/src/main/java/noppes/npcs/ServerEventsHandler.java b/src/main/java/noppes/npcs/ServerEventsHandler.java
index 7b01dd466..3c8d18487 100644
--- a/src/main/java/noppes/npcs/ServerEventsHandler.java
+++ b/src/main/java/noppes/npcs/ServerEventsHandler.java
@@ -3,9 +3,13 @@ package noppes.npcs;
import cpw.mods.fml.common.FMLCommonHandler;
import cpw.mods.fml.common.eventhandler.SubscribeEvent;
import cpw.mods.fml.relauncher.Side;
+import kamkeel.npcs.controllers.SyncMaster;
import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.enums.EnumSoundOperation;
+import kamkeel.npcs.network.enums.EnumSyncAction;
+import kamkeel.npcs.network.enums.EnumSyncType;
import kamkeel.npcs.network.packets.client.SoundManagementPacket;
+import kamkeel.npcs.network.packets.client.large.LargeSyncPacket;
import net.minecraft.block.Block;
import net.minecraft.entity.Entity;
import net.minecraft.entity.EntityList;
@@ -24,13 +28,11 @@ import net.minecraft.util.ChatComponentTranslation;
import net.minecraft.util.MathHelper;
import net.minecraft.util.StatCollector;
import net.minecraft.village.MerchantRecipeList;
-import net.minecraftforge.common.util.FakePlayer;
import net.minecraftforge.event.entity.EntityJoinWorldEvent;
import net.minecraftforge.event.entity.living.LivingAttackEvent;
import net.minecraftforge.event.entity.living.LivingDeathEvent;
import net.minecraftforge.event.entity.living.LivingHurtEvent;
import net.minecraftforge.event.entity.player.EntityInteractEvent;
-import net.minecraftforge.event.entity.player.EntityItemPickupEvent;
import net.minecraftforge.event.entity.player.PlayerEvent;
import net.minecraftforge.event.entity.player.PlayerInteractEvent;
import net.minecraftforge.event.entity.player.PlayerInteractEvent.Action;
@@ -48,7 +50,6 @@ import noppes.npcs.entity.EntityNPCInterface;
import noppes.npcs.items.ItemExcalibur;
import noppes.npcs.items.ItemShield;
import noppes.npcs.items.ItemSoulstoneEmpty;
-import noppes.npcs.quests.QuestItem;
import noppes.npcs.quests.QuestKill;
import noppes.npcs.roles.RoleFollower;
@@ -197,48 +198,20 @@ public class ServerEventsHandler {
}
if(block == Blocks.crafting_table && event.action == Action.RIGHT_CLICK_BLOCK && !player.worldObj.isRemote){
- RecipeController controller = RecipeController.Instance;
- NBTTagList list = new NBTTagList();
- int i = 0;
- for(RecipeCarpentry recipe : controller.globalRecipes.values()){
- list.appendTag(recipe.writeNBT());
- i++;
- if(i % 10 == 0){
- NBTTagCompound compound = new NBTTagCompound();
- compound.setTag("recipes", list);
- Server.sendData((EntityPlayerMP)player, EnumPacketClient.SYNCRECIPES_ADD, compound);
- list = new NBTTagList();
- }
- }
-
- if(i % 10 != 0){
- NBTTagCompound compound = new NBTTagCompound();
- compound.setTag("recipes", list);
- Server.sendData((EntityPlayerMP)player, EnumPacketClient.SYNCRECIPES_ADD, compound);
- }
- Server.sendData((EntityPlayerMP)player, EnumPacketClient.SYNCRECIPES_WORKBENCH);
+ PacketHandler.Instance.sendToPlayer(new LargeSyncPacket(
+ EnumSyncType.WORKBENCH_RECIPES,
+ EnumSyncAction.RELOAD,
+ -1,
+ SyncMaster.workbenchNBT()
+ ), (EntityPlayerMP) player);
}
if(block == CustomItems.carpentyBench && event.action == Action.RIGHT_CLICK_BLOCK && !player.worldObj.isRemote){
- RecipeController controller = RecipeController.Instance;
- NBTTagList list = new NBTTagList();
- int i = 0;
- for(RecipeCarpentry recipe : controller.anvilRecipes.values()){
- list.appendTag(recipe.writeNBT());
- i++;
- if(i % 10 == 0){
- NBTTagCompound compound = new NBTTagCompound();
- compound.setTag("recipes", list);
- Server.sendData((EntityPlayerMP)player, EnumPacketClient.SYNCRECIPES_ADD, compound);
- list = new NBTTagList();
- }
- }
-
- if(i % 10 != 0){
- NBTTagCompound compound = new NBTTagCompound();
- compound.setTag("recipes", list);
- Server.sendData((EntityPlayerMP)player, EnumPacketClient.SYNCRECIPES_ADD, compound);
- }
- Server.sendData((EntityPlayerMP)player, EnumPacketClient.SYNCRECIPES_CARPENTRYBENCH);
+ PacketHandler.Instance.sendToPlayer(new LargeSyncPacket(
+ EnumSyncType.CARPENTRY_RECIPES,
+ EnumSyncAction.RELOAD,
+ -1,
+ SyncMaster.carpentryNBT()
+ ), (EntityPlayerMP) player);
}
if((block == CustomItems.banner || block == CustomItems.wallBanner || block == CustomItems.sign) && event.action == Action.RIGHT_CLICK_BLOCK){
ItemStack item = player.inventory.getCurrentItem();
diff --git a/src/main/java/noppes/npcs/ServerTickHandler.java b/src/main/java/noppes/npcs/ServerTickHandler.java
index 0532401e6..e121889c3 100644
--- a/src/main/java/noppes/npcs/ServerTickHandler.java
+++ b/src/main/java/noppes/npcs/ServerTickHandler.java
@@ -11,7 +11,6 @@ import net.minecraft.server.MinecraftServer;
import net.minecraft.world.WorldServer;
import noppes.npcs.client.AnalyticsTracking;
import noppes.npcs.controllers.PlayerDataController;
-import noppes.npcs.controllers.SyncController;
import noppes.npcs.controllers.data.PlayerData;
import java.net.InetAddress;
diff --git a/src/main/java/noppes/npcs/client/PacketHandlerClient.java b/src/main/java/noppes/npcs/client/PacketHandlerClient.java
index c3c41c549..15bc2e6ba 100644
--- a/src/main/java/noppes/npcs/client/PacketHandlerClient.java
+++ b/src/main/java/noppes/npcs/client/PacketHandlerClient.java
@@ -9,35 +9,23 @@ import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
-import net.minecraft.nbt.NBTTagList;
import net.minecraft.network.PacketBuffer;
-import net.minecraft.util.ChatComponentTranslation;
import net.minecraft.village.MerchantRecipeList;
import noppes.npcs.*;
-import noppes.npcs.client.ClientProxy.FontContainer;
-import noppes.npcs.client.controllers.MusicController;
-import noppes.npcs.client.controllers.ScriptClientSound;
-import noppes.npcs.client.controllers.ScriptSoundController;
import noppes.npcs.client.gui.GuiNpcMobSpawnerAdd;
import noppes.npcs.client.gui.OverlayQuestTracking;
import noppes.npcs.client.gui.customoverlay.OverlayCustom;
import noppes.npcs.client.gui.player.GuiBook;
import noppes.npcs.client.gui.util.*;
-import noppes.npcs.config.ConfigClient;
import noppes.npcs.constants.EnumGuiType;
import noppes.npcs.constants.EnumPacketClient;
import noppes.npcs.constants.EnumPacketServer;
-import noppes.npcs.controllers.RecipeController;
-import noppes.npcs.controllers.SyncController;
import noppes.npcs.controllers.data.Animation;
import noppes.npcs.controllers.data.AnimationData;
import noppes.npcs.controllers.data.MarkData;
-import noppes.npcs.controllers.data.RecipeCarpentry;
-import noppes.npcs.entity.EntityDialogNpc;
import noppes.npcs.entity.EntityNPCInterface;
import java.io.IOException;
-import java.util.HashMap;
public class PacketHandlerClient extends PacketHandlerServer{
@@ -53,30 +41,7 @@ public class PacketHandlerClient extends PacketHandlerServer{
}
private void client(ByteBuf buffer, final EntityPlayer player, EnumPacketClient type) throws IOException{
- if(type == EnumPacketClient.SYNCRECIPES_ADD){
- NBTTagList list = Server.readNBT(buffer).getTagList("recipes", 10);
- if(list == null)
- return;
- for(int i = 0; i < list.tagCount(); i++)
- {
- RecipeCarpentry recipe = RecipeCarpentry.read(list.getCompoundTagAt(i));
- RecipeController.syncRecipes.put(recipe.id,recipe);
- }
-
- }
- else if(type == EnumPacketClient.SYNCRECIPES_WORKBENCH){
- RecipeController.reloadGlobalRecipes(RecipeController.syncRecipes);
- RecipeController.syncRecipes = new HashMap();
- }
- else if(type == EnumPacketClient.SYNCRECIPES_CARPENTRYBENCH){
- RecipeController.Instance.anvilRecipes = RecipeController.syncRecipes;
- RecipeController.syncRecipes = new HashMap();
- }
- else if(type == EnumPacketClient.SYNC_CONFIG){
- NBTTagCompound configNBT = Server.readNBT(buffer);
- SyncController.receiveConfigs(configNBT);
- }
- else if(type == EnumPacketClient.MARK_DATA){
+ if(type == EnumPacketClient.MARK_DATA){
Entity entity = Minecraft.getMinecraft().theWorld.getEntityByID(buffer.readInt());
if(!(entity instanceof EntityNPCInterface))
return;
@@ -92,12 +57,6 @@ public class PacketHandlerClient extends PacketHandlerServer{
else if(type == EnumPacketClient.QUEST_COMPLETION){
NoppesUtil.guiQuestCompletion(player, Server.readNBT(buffer));
}
- else if(type == EnumPacketClient.EDIT_NPC){
- Entity entity = Minecraft.getMinecraft().theWorld.getEntityByID(buffer.readInt());
- if(entity == null || !(entity instanceof EntityNPCInterface))
- return;
- NoppesUtil.setLastNpc((EntityNPCInterface) entity);
- }
else if(type == EnumPacketClient.UPDATE_NPC){
NBTTagCompound compound = Server.readNBT(buffer);
Entity entity = Minecraft.getMinecraft().theWorld.getEntityByID(compound.getInteger("EntityId"));
@@ -118,12 +77,6 @@ public class PacketHandlerClient extends PacketHandlerServer{
EnumGuiType gui = EnumGuiType.values()[buffer.readInt()];
CustomNpcs.proxy.openGui(NoppesUtil.getLastNpc(), gui, buffer.readInt(), buffer.readInt(), buffer.readInt());
}
- else if(type == EnumPacketClient.DELETE_NPC){
- Entity entity = Minecraft.getMinecraft().theWorld.getEntityByID(buffer.readInt());
- if(entity == null || !(entity instanceof EntityNPCInterface))
- return;
- ((EntityNPCInterface)entity).delete();
- }
else if(type == EnumPacketClient.SCROLL_SELECTED){
GuiScreen gui = Minecraft.getMinecraft().currentScreen;
if(gui == null || !(gui instanceof IScrollData))
@@ -193,28 +146,6 @@ public class PacketHandlerClient extends PacketHandlerServer{
NoppesUtil.openGUI(player, new GuiBook(player, ItemStack.loadItemStackFromNBT(Server.readNBT(buffer)), x, y, z));
}
- else if(type == EnumPacketClient.CONFIG){
- int config = buffer.readInt();
- if(config == 0){//Font
- String font = Server.readString(buffer);
- int size = buffer.readInt();
- if(!font.isEmpty()){
- ConfigClient.FontType = font;
- ConfigClient.FontSize = size;
- ClientProxy.Font = new FontContainer(ConfigClient.FontType, ConfigClient.FontSize);
-
- ConfigClient.FontTypeProperty.set(ConfigClient.FontType);
- ConfigClient.FontSizeProperty.set(ConfigClient.FontSize);
- if(ConfigClient.config.hasChanged()){
- ConfigClient.config.save();
- }
-
- player.addChatMessage(new ChatComponentTranslation("Font set to %s", ClientProxy.Font.getName()));
- }
- else
- player.addChatMessage(new ChatComponentTranslation("Current font is %s", ClientProxy.Font.getName()));
- }
- }
else if(type == EnumPacketClient.ISGUIOPEN){
boolean isGUIOpen = Minecraft.getMinecraft().currentScreen != null;
diff --git a/src/main/java/noppes/npcs/client/gui/player/GuiNpcCarpentryBench.java b/src/main/java/noppes/npcs/client/gui/player/GuiNpcCarpentryBench.java
index 290a02b5f..b40544fa2 100644
--- a/src/main/java/noppes/npcs/client/gui/player/GuiNpcCarpentryBench.java
+++ b/src/main/java/noppes/npcs/client/gui/player/GuiNpcCarpentryBench.java
@@ -15,7 +15,7 @@ public class GuiNpcCarpentryBench extends GuiContainerNPCInterface
private final ResourceLocation resource = new ResourceLocation("customnpcs","textures/gui/carpentry.png");
private ContainerCarpentryBench container;
private GuiNpcButton button;
-
+
public GuiNpcCarpentryBench(ContainerCarpentryBench container)
{
super(null,container);
@@ -38,7 +38,7 @@ public class GuiNpcCarpentryBench extends GuiContainerNPCInterface
@Override
protected void drawGuiContainerBackgroundLayer(float f, int i, int j)
{
- button.enabled = RecipeController.Instance != null && !RecipeController.Instance.anvilRecipes.isEmpty();
+ button.enabled = RecipeController.Instance != null && !RecipeController.Instance.carpentryRecipes.isEmpty();
GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F);
mc.renderEngine.bindTexture(resource);
int l = (width - xSize) / 2;
diff --git a/src/main/java/noppes/npcs/client/gui/player/GuiRecipes.java b/src/main/java/noppes/npcs/client/gui/player/GuiRecipes.java
index 5e0c94073..64895af87 100644
--- a/src/main/java/noppes/npcs/client/gui/player/GuiRecipes.java
+++ b/src/main/java/noppes/npcs/client/gui/player/GuiRecipes.java
@@ -33,7 +33,7 @@ public class GuiRecipes extends GuiNPCInterface
this.xSize = 256;
setBackground("recipes.png");
this.closeOnEsc = true;
- recipes.addAll(RecipeController.Instance.anvilRecipes.values());
+ recipes.addAll(RecipeController.Instance.carpentryRecipes.values());
}
@Override
public void initGui(){
@@ -47,7 +47,7 @@ public class GuiRecipes extends GuiNPCInterface
addButton(this.left = new GuiButtonNextPage(1, guiLeft + 150, guiTop + 164, true));
addButton(this.right = new GuiButtonNextPage(2, guiLeft + 80, guiTop + 164, false));
-
+
updateButton();
}
private void updateButton(){
@@ -67,10 +67,10 @@ public class GuiRecipes extends GuiNPCInterface
private List getSearchList(){
if(search.isEmpty()){
- return new ArrayList(RecipeController.Instance.anvilRecipes.values());
+ return new ArrayList(RecipeController.Instance.carpentryRecipes.values());
}
List list = new ArrayList();
- for(IRecipe recipe : RecipeController.Instance.anvilRecipes.values()){
+ for(IRecipe recipe : RecipeController.Instance.carpentryRecipes.values()){
if(recipe.getRecipeOutput() == null)
continue;
@@ -96,12 +96,12 @@ public class GuiRecipes extends GuiNPCInterface
page++;
updateButton();
}
-
+
@Override
public void drawScreen(int xMouse, int yMouse, float f){
super.drawScreen(xMouse, yMouse, f);
mc.renderEngine.bindTexture(resource);
-
+
label.label = page + 1 + "/" + MathHelper.ceiling_float_int(recipes.size() / 4f);
label.x = guiLeft + (256 - Minecraft.getMinecraft().fontRenderer.getStringWidth(label.label)) / 2;
for(int i = 0; i < 4; i++){
@@ -165,11 +165,11 @@ public class GuiRecipes extends GuiNPCInterface
itemRender.renderItemAndEffectIntoGUI(fontRendererObj, mc.renderEngine, item, x, y);
itemRender.renderItemOverlayIntoGUI(fontRendererObj, mc.renderEngine, item, x, y);
itemRender.zLevel = 0.0F;
- RenderHelper.disableStandardItemLighting();
+ RenderHelper.disableStandardItemLighting();
GL11.glDisable(GL12.GL_RESCALE_NORMAL);
GL11.glPopMatrix();
}
-
+
private void drawOverlay(ItemStack item, int x, int y, int xMouse, int yMouse){
if (this.func_146978_c(x - guiLeft, y - guiTop, 16, 16, xMouse, yMouse)){
this.renderToolTip(item, xMouse, yMouse);
@@ -187,4 +187,4 @@ public class GuiRecipes extends GuiNPCInterface
@Override
public void save() {
}
-}
\ No newline at end of file
+}
diff --git a/src/main/java/noppes/npcs/constants/EnumPacketClient.java b/src/main/java/noppes/npcs/constants/EnumPacketClient.java
index 22992e872..4d4032d19 100644
--- a/src/main/java/noppes/npcs/constants/EnumPacketClient.java
+++ b/src/main/java/noppes/npcs/constants/EnumPacketClient.java
@@ -2,15 +2,11 @@ package
noppes.npcs.constants;
public enum EnumPacketClient {
- SYNCRECIPES_ADD,
- SYNCRECIPES_WORKBENCH,
DIALOG,
QUEST_COMPLETION,
- EDIT_NPC,
UPDATE_NPC,
ROLE,
GUI,
- DELETE_NPC,
SCROLL_SELECTED,
GUI_REDSTONE,
GUI_WAYPOINT,
@@ -18,11 +14,9 @@ public enum EnumPacketClient {
GUI_ERROR,
GUI_CLOSE,
VILLAGER_LIST,
- SYNCRECIPES_CARPENTRYBENCH,
CLONE,
TELEPORTER,
OPEN_BOOK,
- CONFIG,
ISGUIOPEN,
SCRIPT_OVERLAY_DATA,
SCRIPT_OVERLAY_CLOSE,
@@ -34,6 +28,5 @@ public enum EnumPacketClient {
DISABLE_MOUSE_INPUT,
SYNC_WEAPON,
MARK_DATA,
- SYNC_CONFIG,
PARTY_DATA
}
diff --git a/src/main/java/noppes/npcs/controllers/RecipeController.java b/src/main/java/noppes/npcs/controllers/RecipeController.java
index bd129f508..e1b5d84f9 100644
--- a/src/main/java/noppes/npcs/controllers/RecipeController.java
+++ b/src/main/java/noppes/npcs/controllers/RecipeController.java
@@ -1,5 +1,6 @@
package noppes.npcs.controllers;
+import kamkeel.npcs.controllers.SyncMaster;
import net.minecraft.inventory.InventoryCrafting;
import net.minecraft.item.ItemStack;
import net.minecraft.item.crafting.CraftingManager;
@@ -21,7 +22,7 @@ import java.util.*;
public class RecipeController implements IRecipeHandler {
private static Collection prevRecipes;
public HashMap globalRecipes = new HashMap();
- public HashMap anvilRecipes = new HashMap();
+ public HashMap carpentryRecipes = new HashMap();
public static RecipeController Instance;
public static final int version = 1;
@@ -59,7 +60,7 @@ public class RecipeController implements IRecipeHandler {
}
else{
globalRecipes.clear();
- anvilRecipes.clear();
+ carpentryRecipes.clear();
loadDefaultRecipes(-1);
}
} catch (Exception e) {
@@ -99,7 +100,7 @@ public class RecipeController implements IRecipeHandler {
nextId = recipe.id;
}
}
- this.anvilRecipes = anvilRecipes;
+ this.carpentryRecipes = anvilRecipes;
this.globalRecipes = globalRecipes;
loadDefaultRecipes(nbttagcompound1.getInteger("Version"));
}
@@ -110,7 +111,7 @@ public class RecipeController implements IRecipeHandler {
for(RecipeCarpentry recipe : globalRecipes.values()){
list.appendTag(recipe.writeNBT());
}
- for(RecipeCarpentry recipe : anvilRecipes.values()){
+ for(RecipeCarpentry recipe : carpentryRecipes.values()){
list.appendTag(recipe.writeNBT());
}
NBTTagCompound nbttagcompound = new NBTTagCompound();
@@ -141,7 +142,7 @@ public class RecipeController implements IRecipeHandler {
}
public RecipeCarpentry findMatchingRecipe(InventoryCrafting par1InventoryCrafting){
- for(RecipeCarpentry recipe : anvilRecipes.values()){
+ for(RecipeCarpentry recipe : carpentryRecipes.values()){
if(recipe.isValid() && recipe.matches(par1InventoryCrafting,null))
return recipe;
}
@@ -151,8 +152,8 @@ public class RecipeController implements IRecipeHandler {
public RecipeCarpentry getRecipe(int id) {
if(globalRecipes.containsKey(id))
return globalRecipes.get(id);
- if(anvilRecipes.containsKey(id))
- return anvilRecipes.get(id);
+ if(carpentryRecipes.containsKey(id))
+ return carpentryRecipes.get(id);
return null;
}
@@ -171,12 +172,12 @@ public class RecipeController implements IRecipeHandler {
recipe.name += "_";
}
if(recipe.isGlobal){
- anvilRecipes.remove(recipe.id);
+ carpentryRecipes.remove(recipe.id);
globalRecipes.put(recipe.id, recipe);
}
else{
globalRecipes.remove(recipe.id);
- anvilRecipes.put(recipe.id, recipe);
+ carpentryRecipes.put(recipe.id, recipe);
}
saveCategories();
reloadGlobalRecipes(globalRecipes);
@@ -192,7 +193,7 @@ public class RecipeController implements IRecipeHandler {
if(recipe.name.toLowerCase().equals(name))
return true;
}
- for(RecipeCarpentry recipe : anvilRecipes.values()){
+ for(RecipeCarpentry recipe : carpentryRecipes.values()){
if(recipe.name.toLowerCase().equals(name))
return true;
}
@@ -203,8 +204,14 @@ public class RecipeController implements IRecipeHandler {
RecipeCarpentry recipe = getRecipe(id);
if(recipe == null)
return null;
- globalRecipes.remove(recipe.id);
- anvilRecipes.remove(recipe.id);
+ RecipeCarpentry globalRecipe = globalRecipes.remove(recipe.id);
+ if(globalRecipe != null)
+ SyncMaster.syncAllWorkbenchRecipes();
+
+ RecipeCarpentry carpentry = carpentryRecipes.remove(recipe.id);
+ if(carpentry != null)
+ SyncMaster.syncAllWorkbenchRecipes();
+
saveCategories();
reloadGlobalRecipes(globalRecipes);
return recipe;
@@ -212,7 +219,7 @@ public class RecipeController implements IRecipeHandler {
public void addRecipe(RecipeCarpentry recipeAnvil) {
recipeAnvil.id = getUniqueId();
if(!recipeAnvil.isGlobal)
- RecipeController.Instance.anvilRecipes.put(recipeAnvil.id, recipeAnvil);
+ RecipeController.Instance.carpentryRecipes.put(recipeAnvil.id, recipeAnvil);
else{
RecipeController.Instance.globalRecipes.put(recipeAnvil.id, recipeAnvil);
}
@@ -223,7 +230,7 @@ public class RecipeController implements IRecipeHandler {
}
public List getCarpentryList() {
- return new ArrayList(this.anvilRecipes.values());
+ return new ArrayList(this.carpentryRecipes.values());
}
public void addRecipe(String name, boolean global, ItemStack result, Object... objects) {
diff --git a/src/main/java/noppes/npcs/controllers/SyncController.java b/src/main/java/noppes/npcs/controllers/SyncController.java
deleted file mode 100644
index d66792574..000000000
--- a/src/main/java/noppes/npcs/controllers/SyncController.java
+++ /dev/null
@@ -1,25 +0,0 @@
-package noppes.npcs.controllers;
-
-import io.netty.buffer.ByteBuf;
-import kamkeel.npcs.addon.DBCAddon;
-import net.minecraft.entity.player.EntityPlayerMP;
-import net.minecraft.nbt.NBTTagCompound;
-import net.minecraft.nbt.NBTTagList;
-import noppes.npcs.NoppesUtilServer;
-import noppes.npcs.Server;
-import noppes.npcs.config.ConfigMain;
-import noppes.npcs.constants.EnumPacketClient;
-
-public class SyncController {
-
- public static void syncConfigs(EntityPlayerMP player){
- NBTTagCompound nbtTagCompound = new NBTTagCompound();
- nbtTagCompound.setBoolean("Profiles", true);
- Server.sendData(player, EnumPacketClient.SYNC_CONFIG, nbtTagCompound);
- }
-
- public static void receiveConfigs(NBTTagCompound compound){
- ConfigMain.EnableProfiles = compound.getBoolean("Profiles");
- }
-
-}
From ee8527f261f1e993ffe464467f75ffad35753289 Mon Sep 17 00:00:00 2001
From: Kam
Date: Thu, 30 Jan 2025 09:26:04 -0500
Subject: [PATCH 026/357] SyncController Fixes
---
src/main/java/foxz/command/CmdQuest.java | 4 ++--
.../{SyncMaster.java => SyncController.java} | 4 +---
src/main/java/noppes/npcs/NoppesUtilPlayer.java | 6 +++---
src/main/java/noppes/npcs/ServerTickHandler.java | 4 ++--
.../java/noppes/npcs/controllers/DialogController.java | 10 +++++-----
.../java/noppes/npcs/controllers/QuestController.java | 8 ++++----
6 files changed, 17 insertions(+), 19 deletions(-)
rename src/main/java/kamkeel/npcs/controllers/{SyncMaster.java => SyncController.java} (99%)
diff --git a/src/main/java/foxz/command/CmdQuest.java b/src/main/java/foxz/command/CmdQuest.java
index 332b55e79..efac25afe 100644
--- a/src/main/java/foxz/command/CmdQuest.java
+++ b/src/main/java/foxz/command/CmdQuest.java
@@ -5,7 +5,7 @@ import foxz.commandhelper.annotations.Command;
import foxz.commandhelper.annotations.SubCommand;
import foxz.commandhelper.permissions.OpOnly;
import foxz.commandhelper.permissions.ParamCheck;
-import kamkeel.npcs.controllers.SyncMaster;
+import kamkeel.npcs.controllers.SyncController;
import kamkeel.npcs.network.PacketUtil;
import net.minecraft.entity.player.EntityPlayerMP;
import noppes.npcs.controllers.QuestController;
@@ -169,7 +169,7 @@ public class CmdQuest extends ChMcLogger{
)
public boolean reload(String args[]){
new QuestController().load();
- SyncMaster.syncAllQuests();
+ SyncController.syncAllQuests();
return true;
}
}
diff --git a/src/main/java/kamkeel/npcs/controllers/SyncMaster.java b/src/main/java/kamkeel/npcs/controllers/SyncController.java
similarity index 99%
rename from src/main/java/kamkeel/npcs/controllers/SyncMaster.java
rename to src/main/java/kamkeel/npcs/controllers/SyncController.java
index 6f8332934..4d5397f7e 100644
--- a/src/main/java/kamkeel/npcs/controllers/SyncMaster.java
+++ b/src/main/java/kamkeel/npcs/controllers/SyncController.java
@@ -10,9 +10,7 @@ import kamkeel.npcs.network.enums.EnumSyncType;
import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.nbt.NBTTagList;
-import noppes.npcs.Server;
import noppes.npcs.client.ClientCacheHandler;
-import noppes.npcs.constants.EnumPacketClient;
import noppes.npcs.controllers.DialogController;
import noppes.npcs.controllers.FactionController;
import noppes.npcs.controllers.QuestController;
@@ -21,7 +19,7 @@ import noppes.npcs.controllers.data.*;
import java.util.HashMap;
-public class SyncMaster {
+public class SyncController {
public static void syncPlayer(EntityPlayerMP player){
// 1) Factions
diff --git a/src/main/java/noppes/npcs/NoppesUtilPlayer.java b/src/main/java/noppes/npcs/NoppesUtilPlayer.java
index 65724ad84..3802edca2 100644
--- a/src/main/java/noppes/npcs/NoppesUtilPlayer.java
+++ b/src/main/java/noppes/npcs/NoppesUtilPlayer.java
@@ -290,17 +290,17 @@ public class NoppesUtilPlayer {
if(npc.roleInterface != null)
npc.roleInterface.interact(player);
else
- Server.sendData(player, EnumPacketClient.GUI_CLOSE);
+ PacketUtil.closeGUI(player, -1 , new NBTTagCompound());
}
else if(option.optionType == EnumOptionType.DialogOption){
NoppesUtilServer.openDialog(player, npc, option.getDialog(), optionId+1);
}
else if(option.optionType == EnumOptionType.CommandBlock){
- Server.sendData(player, EnumPacketClient.GUI_CLOSE);
+ PacketUtil.closeGUI(player, -1 , new NBTTagCompound());
NoppesUtilServer.runCommand(player, npc.getCommandSenderName(), option.command);
}
else
- Server.sendData(player, EnumPacketClient.GUI_CLOSE);
+ PacketUtil.closeGUI(player, -1 , new NBTTagCompound());
}
public static void updateQuestLogData(ByteBuf buffer, EntityPlayerMP player) throws IOException {
diff --git a/src/main/java/noppes/npcs/ServerTickHandler.java b/src/main/java/noppes/npcs/ServerTickHandler.java
index e121889c3..2b628659f 100644
--- a/src/main/java/noppes/npcs/ServerTickHandler.java
+++ b/src/main/java/noppes/npcs/ServerTickHandler.java
@@ -5,7 +5,7 @@ import cpw.mods.fml.common.gameevent.PlayerEvent;
import cpw.mods.fml.common.gameevent.TickEvent;
import cpw.mods.fml.common.gameevent.TickEvent.Phase;
import kamkeel.npcs.controllers.ProfileController;
-import kamkeel.npcs.controllers.SyncMaster;
+import kamkeel.npcs.controllers.SyncController;
import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.server.MinecraftServer;
import net.minecraft.world.WorldServer;
@@ -52,7 +52,7 @@ public class ServerTickHandler {
playerData.onLogin();
}
- SyncMaster.syncPlayer(player);
+ SyncController.syncPlayer(player);
ProfileController.login(player);
}
diff --git a/src/main/java/noppes/npcs/controllers/DialogController.java b/src/main/java/noppes/npcs/controllers/DialogController.java
index 1a19dd8b5..f87c0fe5a 100644
--- a/src/main/java/noppes/npcs/controllers/DialogController.java
+++ b/src/main/java/noppes/npcs/controllers/DialogController.java
@@ -1,6 +1,6 @@
package noppes.npcs.controllers;
-import kamkeel.npcs.controllers.SyncMaster;
+import kamkeel.npcs.controllers.SyncController;
import kamkeel.npcs.network.enums.EnumSyncType;
import net.minecraft.nbt.CompressedStreamTools;
import net.minecraft.nbt.NBTTagCompound;
@@ -229,7 +229,7 @@ public class DialogController implements IDialogHandler {
dir.mkdirs();
}
categories.put(category.id, category);
- SyncMaster.syncUpdate(EnumSyncType.DIALOG_CATEGORY, -1, SyncMaster.updateDialogCat(category));
+ SyncController.syncUpdate(EnumSyncType.DIALOG_CATEGORY, -1, SyncController.updateDialogCat(category));
}
public void removeCategory(int category){
@@ -242,7 +242,7 @@ public class DialogController implements IDialogHandler {
for(int dia : cat.dialogs.keySet())
dialogs.remove(dia);
categories.remove(category);
- SyncMaster.syncRemove(EnumSyncType.DIALOG_CATEGORY, category);
+ SyncController.syncRemove(EnumSyncType.DIALOG_CATEGORY, category);
}
private boolean containsCategoryName(String name) {
@@ -290,7 +290,7 @@ public class DialogController implements IDialogHandler {
if(file2.exists())
file2.delete();
file.renameTo(file2);
- SyncMaster.syncUpdate(EnumSyncType.DIALOG, category.id, dialog.writeToNBT(new NBTTagCompound()));
+ SyncController.syncUpdate(EnumSyncType.DIALOG, category.id, dialog.writeToNBT(new NBTTagCompound()));
} catch (Exception e) {
LogWriter.except(e);
}
@@ -304,7 +304,7 @@ public class DialogController implements IDialogHandler {
return;
category.dialogs.remove(dialog.id);
dialogs.remove(dialog.id);
- SyncMaster.syncRemove(EnumSyncType.DIALOG, dialog.id);
+ SyncController.syncRemove(EnumSyncType.DIALOG, dialog.id);
}
private File getDir(){
diff --git a/src/main/java/noppes/npcs/controllers/QuestController.java b/src/main/java/noppes/npcs/controllers/QuestController.java
index 3b1c2c30e..51051bcb4 100644
--- a/src/main/java/noppes/npcs/controllers/QuestController.java
+++ b/src/main/java/noppes/npcs/controllers/QuestController.java
@@ -1,6 +1,6 @@
package noppes.npcs.controllers;
-import kamkeel.npcs.controllers.SyncMaster;
+import kamkeel.npcs.controllers.SyncController;
import kamkeel.npcs.network.enums.EnumSyncType;
import net.minecraft.nbt.CompressedStreamTools;
import net.minecraft.nbt.NBTTagCompound;
@@ -145,7 +145,7 @@ public class QuestController implements IQuestHandler {
for(int dia : cat.quests.keySet())
quests.remove(dia);
categories.remove(category);
- SyncMaster.syncRemove(EnumSyncType.QUEST_CATEGORY, category);
+ SyncController.syncRemove(EnumSyncType.QUEST_CATEGORY, category);
}
public void saveCategory(QuestCategory category){
@@ -176,7 +176,7 @@ public class QuestController implements IQuestHandler {
dir.mkdirs();
}
categories.put(category.id, category);
- SyncMaster.syncUpdate(EnumSyncType.QUEST_CATEGORY, -1, SyncMaster.updateQuestCat(category));
+ SyncController.syncUpdate(EnumSyncType.QUEST_CATEGORY, -1, SyncController.updateQuestCat(category));
}
private boolean containsCategoryName(String name) {
name = name.toLowerCase();
@@ -224,7 +224,7 @@ public class QuestController implements IQuestHandler {
if(file2.exists())
file2.delete();
file.renameTo(file2);
- SyncMaster.syncUpdate(EnumSyncType.QUEST, category.id, quest.writeToNBT(new NBTTagCompound()));
+ SyncController.syncUpdate(EnumSyncType.QUEST, category.id, quest.writeToNBT(new NBTTagCompound()));
} catch (Exception e) {
e.printStackTrace();
}
From fb496ce1e2f944a907d2ff9f4ec1295f9f67a5a2 Mon Sep 17 00:00:00 2001
From: Kam
Date: Thu, 30 Jan 2025 09:26:10 -0500
Subject: [PATCH 027/357] SyncController
---
src/main/java/foxz/command/CmdDialog.java | 4 +--
.../kamkeel/npcs/command/DialogCommand.java | 4 +--
.../kamkeel/npcs/command/QuestCommand.java | 4 +--
.../packets/client/large/LargeSyncPacket.java | 8 +++---
.../java/noppes/npcs/NoppesUtilServer.java | 4 +--
.../noppes/npcs/ScriptPlayerEventHandler.java | 4 +--
.../java/noppes/npcs/ServerEventsHandler.java | 8 +++---
.../npcs/client/PacketHandlerClient.java | 25 -------------------
.../npcs/constants/EnumPacketClient.java | 2 --
.../npcs/controllers/FactionController.java | 6 ++---
.../npcs/controllers/RecipeController.java | 6 ++---
.../npcs/scripted/entity/ScriptPlayer.java | 2 +-
12 files changed, 24 insertions(+), 53 deletions(-)
diff --git a/src/main/java/foxz/command/CmdDialog.java b/src/main/java/foxz/command/CmdDialog.java
index 842611930..3b6a3e857 100644
--- a/src/main/java/foxz/command/CmdDialog.java
+++ b/src/main/java/foxz/command/CmdDialog.java
@@ -5,7 +5,7 @@ import foxz.commandhelper.annotations.Command;
import foxz.commandhelper.annotations.SubCommand;
import foxz.commandhelper.permissions.OpOnly;
import foxz.commandhelper.permissions.ParamCheck;
-import kamkeel.npcs.controllers.SyncMaster;
+import kamkeel.npcs.controllers.SyncController;
import net.minecraft.command.CommandBase;
import net.minecraft.entity.player.EntityPlayer;
import noppes.npcs.NoppesUtilServer;
@@ -89,7 +89,7 @@ public class CmdDialog extends ChMcLogger {
)
public boolean reload(String args[]){
new DialogController().load();
- SyncMaster.syncAllDialogs();
+ SyncController.syncAllDialogs();
return true;
}
diff --git a/src/main/java/kamkeel/npcs/command/DialogCommand.java b/src/main/java/kamkeel/npcs/command/DialogCommand.java
index d89311880..4ad1e7e22 100644
--- a/src/main/java/kamkeel/npcs/command/DialogCommand.java
+++ b/src/main/java/kamkeel/npcs/command/DialogCommand.java
@@ -1,6 +1,6 @@
package kamkeel.npcs.command;
-import kamkeel.npcs.controllers.SyncMaster;
+import kamkeel.npcs.controllers.SyncController;
import net.minecraft.command.CommandBase;
import net.minecraft.command.CommandException;
import net.minecraft.command.ICommandSender;
@@ -89,7 +89,7 @@ public class DialogCommand extends CommandKamkeelBase {
)
public void reload(ICommandSender sender, String args[]){
new DialogController().load();
- SyncMaster.syncAllDialogs();
+ SyncController.syncAllDialogs();
sendResult(sender, "Dialogs Reloaded");
}
diff --git a/src/main/java/kamkeel/npcs/command/QuestCommand.java b/src/main/java/kamkeel/npcs/command/QuestCommand.java
index 4dc1a334e..644b64ddc 100644
--- a/src/main/java/kamkeel/npcs/command/QuestCommand.java
+++ b/src/main/java/kamkeel/npcs/command/QuestCommand.java
@@ -1,6 +1,6 @@
package kamkeel.npcs.command;
-import kamkeel.npcs.controllers.SyncMaster;
+import kamkeel.npcs.controllers.SyncController;
import kamkeel.npcs.network.PacketUtil;
import net.minecraft.command.CommandException;
import net.minecraft.command.ICommandSender;
@@ -381,7 +381,7 @@ public class QuestCommand extends CommandKamkeelBase {
)
public void reload(ICommandSender sender, String args[]){
new QuestController().load();
- SyncMaster.syncAllQuests();
+ SyncController.syncAllQuests();
sendResult(sender, "Quests Reloaded");
}
}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/large/LargeSyncPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/large/LargeSyncPacket.java
index 2ce8f59e9..e454467f9 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/large/LargeSyncPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/large/LargeSyncPacket.java
@@ -3,7 +3,7 @@ package kamkeel.npcs.network.packets.client.large;
import cpw.mods.fml.relauncher.Side;
import io.netty.buffer.ByteBuf;
import io.netty.buffer.Unpooled;
-import kamkeel.npcs.controllers.SyncMaster;
+import kamkeel.npcs.controllers.SyncController;
import kamkeel.npcs.network.LargeAbstractPacket;
import kamkeel.npcs.network.PacketChannel;
import kamkeel.npcs.network.PacketHandler;
@@ -89,13 +89,13 @@ public final class LargeSyncPacket extends LargeAbstractPacket {
private void handleSyncPacketClient(EnumSyncType enumSyncType, EnumSyncAction enumSyncAction, int id, NBTTagCompound data) {
switch (enumSyncAction) {
case RELOAD:
- SyncMaster.clientSync(enumSyncType, data);
+ SyncController.clientSync(enumSyncType, data);
break;
case UPDATE:
- SyncMaster.clientUpdate(enumSyncType, id, data);
+ SyncController.clientUpdate(enumSyncType, id, data);
break;
case REMOVE:
- SyncMaster.clientSyncRemove(enumSyncType, id);
+ SyncController.clientSyncRemove(enumSyncType, id);
break;
}
}
diff --git a/src/main/java/noppes/npcs/NoppesUtilServer.java b/src/main/java/noppes/npcs/NoppesUtilServer.java
index 56f6cbf05..d81bc9abe 100644
--- a/src/main/java/noppes/npcs/NoppesUtilServer.java
+++ b/src/main/java/noppes/npcs/NoppesUtilServer.java
@@ -1,7 +1,7 @@
package noppes.npcs;
import io.netty.buffer.ByteBuf;
-import kamkeel.npcs.controllers.SyncMaster;
+import kamkeel.npcs.controllers.SyncController;
import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.PacketUtil;
import kamkeel.npcs.network.packets.client.DialogPacket;
@@ -574,7 +574,7 @@ public class NoppesUtilServer {
playerdata.save();
}
if(pl != null) {
- SyncMaster.syncPlayer((EntityPlayerMP) pl);
+ SyncController.syncPlayer((EntityPlayerMP) pl);
}
sendPlayerData(type, player, name);
}
diff --git a/src/main/java/noppes/npcs/ScriptPlayerEventHandler.java b/src/main/java/noppes/npcs/ScriptPlayerEventHandler.java
index 2ad69fc27..e9afafd53 100644
--- a/src/main/java/noppes/npcs/ScriptPlayerEventHandler.java
+++ b/src/main/java/noppes/npcs/ScriptPlayerEventHandler.java
@@ -5,7 +5,7 @@ import cpw.mods.fml.common.eventhandler.SubscribeEvent;
import cpw.mods.fml.common.gameevent.PlayerEvent;
import cpw.mods.fml.common.gameevent.TickEvent;
import cpw.mods.fml.relauncher.Side;
-import kamkeel.npcs.controllers.SyncMaster;
+import kamkeel.npcs.controllers.SyncController;
import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.EntityPlayerMP;
@@ -63,7 +63,7 @@ public class ScriptPlayerEventHandler {
PlayerData playerData = PlayerDataController.Instance.getPlayerData(player);
if(playerData.updateClient) {
- SyncMaster.syncPlayerData((EntityPlayerMP)player, true);
+ SyncController.syncPlayerData((EntityPlayerMP)player, true);
playerData.updateClient = false;
}
diff --git a/src/main/java/noppes/npcs/ServerEventsHandler.java b/src/main/java/noppes/npcs/ServerEventsHandler.java
index 3c8d18487..3e59a2325 100644
--- a/src/main/java/noppes/npcs/ServerEventsHandler.java
+++ b/src/main/java/noppes/npcs/ServerEventsHandler.java
@@ -3,7 +3,7 @@ package noppes.npcs;
import cpw.mods.fml.common.FMLCommonHandler;
import cpw.mods.fml.common.eventhandler.SubscribeEvent;
import cpw.mods.fml.relauncher.Side;
-import kamkeel.npcs.controllers.SyncMaster;
+import kamkeel.npcs.controllers.SyncController;
import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.enums.EnumSoundOperation;
import kamkeel.npcs.network.enums.EnumSyncAction;
@@ -21,7 +21,6 @@ import net.minecraft.init.Blocks;
import net.minecraft.init.Items;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
-import net.minecraft.nbt.NBTTagList;
import net.minecraft.server.MinecraftServer;
import net.minecraft.util.ChatComponentText;
import net.minecraft.util.ChatComponentTranslation;
@@ -43,7 +42,6 @@ import noppes.npcs.config.ConfigMain;
import noppes.npcs.constants.*;
import noppes.npcs.controllers.PartyController;
import noppes.npcs.controllers.PlayerDataController;
-import noppes.npcs.controllers.RecipeController;
import noppes.npcs.controllers.ServerCloneController;
import noppes.npcs.controllers.data.*;
import noppes.npcs.entity.EntityNPCInterface;
@@ -202,7 +200,7 @@ public class ServerEventsHandler {
EnumSyncType.WORKBENCH_RECIPES,
EnumSyncAction.RELOAD,
-1,
- SyncMaster.workbenchNBT()
+ SyncController.workbenchNBT()
), (EntityPlayerMP) player);
}
if(block == CustomItems.carpentyBench && event.action == Action.RIGHT_CLICK_BLOCK && !player.worldObj.isRemote){
@@ -210,7 +208,7 @@ public class ServerEventsHandler {
EnumSyncType.CARPENTRY_RECIPES,
EnumSyncAction.RELOAD,
-1,
- SyncMaster.carpentryNBT()
+ SyncController.carpentryNBT()
), (EntityPlayerMP) player);
}
if((block == CustomItems.banner || block == CustomItems.wallBanner || block == CustomItems.sign) && event.action == Action.RIGHT_CLICK_BLOCK){
diff --git a/src/main/java/noppes/npcs/client/PacketHandlerClient.java b/src/main/java/noppes/npcs/client/PacketHandlerClient.java
index 15bc2e6ba..fd9be163d 100644
--- a/src/main/java/noppes/npcs/client/PacketHandlerClient.java
+++ b/src/main/java/noppes/npcs/client/PacketHandlerClient.java
@@ -112,31 +112,6 @@ public class PacketHandlerClient extends PacketHandlerServer{
if(gui instanceof IGuiData)
((IGuiData)gui).setGuiData(Server.readNBT(buffer));
}
- else if(type == EnumPacketClient.GUI_ERROR){
- GuiScreen gui = Minecraft.getMinecraft().currentScreen;
- if(gui == null || !(gui instanceof IGuiError))
- return;
-
- int i = buffer.readInt();
- NBTTagCompound compound = Server.readNBT(buffer);
-
- ((IGuiError)gui).setError(i, compound);
- }
- else if(type == EnumPacketClient.GUI_CLOSE){
- GuiScreen gui = Minecraft.getMinecraft().currentScreen;
- if(gui == null)
- return;
-
- if(gui instanceof IGuiClose){
- int i = buffer.readInt();
- NBTTagCompound compound = Server.readNBT(buffer);
- ((IGuiClose)gui).setClose(i, compound);
- }
-
- Minecraft mc = Minecraft.getMinecraft();
- mc.displayGuiScreen(null);
- mc.setIngameFocus();
- }
else if(type == EnumPacketClient.VILLAGER_LIST){
MerchantRecipeList merchantrecipelist = MerchantRecipeList.func_151390_b(new PacketBuffer(buffer));
ServerEventsHandler.Merchant.setRecipes(merchantrecipelist);
diff --git a/src/main/java/noppes/npcs/constants/EnumPacketClient.java b/src/main/java/noppes/npcs/constants/EnumPacketClient.java
index 4d4032d19..a372477a4 100644
--- a/src/main/java/noppes/npcs/constants/EnumPacketClient.java
+++ b/src/main/java/noppes/npcs/constants/EnumPacketClient.java
@@ -11,8 +11,6 @@ public enum EnumPacketClient {
GUI_REDSTONE,
GUI_WAYPOINT,
GUI_DATA,
- GUI_ERROR,
- GUI_CLOSE,
VILLAGER_LIST,
CLONE,
TELEPORTER,
diff --git a/src/main/java/noppes/npcs/controllers/FactionController.java b/src/main/java/noppes/npcs/controllers/FactionController.java
index d9419131c..9ab4b6311 100644
--- a/src/main/java/noppes/npcs/controllers/FactionController.java
+++ b/src/main/java/noppes/npcs/controllers/FactionController.java
@@ -1,6 +1,6 @@
package noppes.npcs.controllers;
-import kamkeel.npcs.controllers.SyncMaster;
+import kamkeel.npcs.controllers.SyncController;
import kamkeel.npcs.network.enums.EnumSyncType;
import net.minecraft.nbt.CompressedStreamTools;
import net.minecraft.nbt.NBTTagCompound;
@@ -157,7 +157,7 @@ public class FactionController implements IFactionHandler {
NBTTagCompound facCompound = new NBTTagCompound();
faction.writeNBT(facCompound);
- SyncMaster.syncUpdate(EnumSyncType.FACTION, -1, facCompound);
+ SyncController.syncUpdate(EnumSyncType.FACTION, -1, facCompound);
saveFactions();
}
@@ -192,7 +192,7 @@ public class FactionController implements IFactionHandler {
} else {
this.saveFactions();
faction.id = -1;
- SyncMaster.syncRemove(EnumSyncType.FACTION, id);
+ SyncController.syncRemove(EnumSyncType.FACTION, id);
return faction;
}
} else {
diff --git a/src/main/java/noppes/npcs/controllers/RecipeController.java b/src/main/java/noppes/npcs/controllers/RecipeController.java
index e1b5d84f9..1bdddd556 100644
--- a/src/main/java/noppes/npcs/controllers/RecipeController.java
+++ b/src/main/java/noppes/npcs/controllers/RecipeController.java
@@ -1,6 +1,6 @@
package noppes.npcs.controllers;
-import kamkeel.npcs.controllers.SyncMaster;
+import kamkeel.npcs.controllers.SyncController;
import net.minecraft.inventory.InventoryCrafting;
import net.minecraft.item.ItemStack;
import net.minecraft.item.crafting.CraftingManager;
@@ -206,11 +206,11 @@ public class RecipeController implements IRecipeHandler {
return null;
RecipeCarpentry globalRecipe = globalRecipes.remove(recipe.id);
if(globalRecipe != null)
- SyncMaster.syncAllWorkbenchRecipes();
+ SyncController.syncAllWorkbenchRecipes();
RecipeCarpentry carpentry = carpentryRecipes.remove(recipe.id);
if(carpentry != null)
- SyncMaster.syncAllWorkbenchRecipes();
+ SyncController.syncAllWorkbenchRecipes();
saveCategories();
reloadGlobalRecipes(globalRecipes);
diff --git a/src/main/java/noppes/npcs/scripted/entity/ScriptPlayer.java b/src/main/java/noppes/npcs/scripted/entity/ScriptPlayer.java
index 2aee9c6a0..4dc28df83 100644
--- a/src/main/java/noppes/npcs/scripted/entity/ScriptPlayer.java
+++ b/src/main/java/noppes/npcs/scripted/entity/ScriptPlayer.java
@@ -757,7 +757,7 @@ public class ScriptPlayer extends ScriptLivingBase
public void closeGui() {
((EntityPlayerMP)this.entity).closeContainer();
- Server.sendData((EntityPlayerMP)this.entity, EnumPacketClient.GUI_CLOSE, -1, new NBTTagCompound());
+ PacketUtil.closeGUI(player, -1 , new NBTTagCompound());
}
public void showCustomOverlay(ICustomOverlay overlay) {
From 87cad579ae19775c40b2398ed2410e399f7ce338 Mon Sep 17 00:00:00 2001
From: Kam
Date: Thu, 30 Jan 2025 09:30:31 -0500
Subject: [PATCH 028/357] Large GUI Data Packet
---
.../kamkeel/npcs/network/PacketHandler.java | 7 ++---
.../java/kamkeel/npcs/network/PacketUtil.java | 4 +--
.../LargeGuiDataPacket.java} | 27 +++++++++++--------
3 files changed, 20 insertions(+), 18 deletions(-)
rename src/main/java/kamkeel/npcs/network/packets/client/{gui/GuiDataPacket.java => large/LargeGuiDataPacket.java} (66%)
diff --git a/src/main/java/kamkeel/npcs/network/PacketHandler.java b/src/main/java/kamkeel/npcs/network/PacketHandler.java
index c3bf6b871..7cce24566 100644
--- a/src/main/java/kamkeel/npcs/network/PacketHandler.java
+++ b/src/main/java/kamkeel/npcs/network/PacketHandler.java
@@ -9,10 +9,7 @@ import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.enums.EnumPacketType;
import kamkeel.npcs.network.packets.client.*;
import kamkeel.npcs.network.packets.client.gui.*;
-import kamkeel.npcs.network.packets.client.large.LargeScrollDataPacket;
-import kamkeel.npcs.network.packets.client.large.LargeScrollGroupPacket;
-import kamkeel.npcs.network.packets.client.large.LargeScrollListPacket;
-import kamkeel.npcs.network.packets.client.large.LargeSyncPacket;
+import kamkeel.npcs.network.packets.client.large.*;
import kamkeel.npcs.network.packets.client.npc.DeleteNpcPacket;
import kamkeel.npcs.network.packets.client.npc.EditNpcPacket;
import kamkeel.npcs.network.packets.client.script.ScriptedParticlePacket;
@@ -68,7 +65,7 @@ public final class PacketHandler {
CLIENT_PACKET.registerPacket(new GuiClosePacket());
CLIENT_PACKET.registerPacket(new GuiOpenPacket());
CLIENT_PACKET.registerPacket(new GuiErrorPacket());
- CLIENT_PACKET.registerPacket(new GuiDataPacket());
+ CLIENT_PACKET.registerPacket(new LargeGuiDataPacket());
CLIENT_PACKET.registerPacket(new GuiClonerPacket());
// Client | NPC Packets
diff --git a/src/main/java/kamkeel/npcs/network/PacketUtil.java b/src/main/java/kamkeel/npcs/network/PacketUtil.java
index a2f93d585..c44eae29b 100644
--- a/src/main/java/kamkeel/npcs/network/PacketUtil.java
+++ b/src/main/java/kamkeel/npcs/network/PacketUtil.java
@@ -3,7 +3,7 @@ package kamkeel.npcs.network;
import kamkeel.npcs.network.packets.client.ChatAlertPacket;
import kamkeel.npcs.network.packets.client.AchievementPacket;
import kamkeel.npcs.network.packets.client.gui.GuiClosePacket;
-import kamkeel.npcs.network.packets.client.gui.GuiDataPacket;
+import kamkeel.npcs.network.packets.client.large.LargeGuiDataPacket;
import kamkeel.npcs.network.packets.client.gui.GuiErrorPacket;
import kamkeel.npcs.network.packets.client.gui.GuiOpenPacket;
import kamkeel.npcs.network.packets.client.large.LargeScrollGroupPacket;
@@ -59,7 +59,7 @@ public class PacketUtil {
}
public static void sendGuiData(EntityPlayerMP playerMP, NBTTagCompound compound){
- GuiDataPacket packet = new GuiDataPacket(compound);
+ LargeGuiDataPacket packet = new LargeGuiDataPacket(compound);
PacketHandler.Instance.sendToPlayer(packet, playerMP);
}
}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiDataPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/large/LargeGuiDataPacket.java
similarity index 66%
rename from src/main/java/kamkeel/npcs/network/packets/client/gui/GuiDataPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/large/LargeGuiDataPacket.java
index 1ee404bd0..8bf57d986 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiDataPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/large/LargeGuiDataPacket.java
@@ -1,9 +1,11 @@
-package kamkeel.npcs.network.packets.client.gui;
+package kamkeel.npcs.network.packets.client.large;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import io.netty.buffer.ByteBuf;
+import io.netty.buffer.Unpooled;
import kamkeel.npcs.network.AbstractPacket;
+import kamkeel.npcs.network.LargeAbstractPacket;
import kamkeel.npcs.network.PacketChannel;
import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.enums.EnumClientPacket;
@@ -12,22 +14,21 @@ import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.GuiScreen;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.nbt.NBTTagCompound;
-import noppes.npcs.CustomNpcs;
-import noppes.npcs.Server;
import noppes.npcs.client.gui.util.GuiContainerNPCInterface;
import noppes.npcs.client.gui.util.GuiNPCInterface;
import noppes.npcs.client.gui.util.IGuiData;
import java.io.IOException;
+import java.util.Map;
-public final class GuiDataPacket extends AbstractPacket {
+public final class LargeGuiDataPacket extends LargeAbstractPacket {
public static final String packetName = "Client|GuiData";
private NBTTagCompound compound;
- public GuiDataPacket(){}
+ public LargeGuiDataPacket(){}
- public GuiDataPacket(NBTTagCompound comp){
+ public LargeGuiDataPacket(NBTTagCompound comp){
this.compound = comp;
}
@@ -38,17 +39,21 @@ public final class GuiDataPacket extends AbstractPacket {
@Override
public PacketChannel getChannel() {
- return PacketHandler.CLIENT_PACKET;
+ return PacketHandler.LARGE_PACKET;
}
@Override
- public void sendData(ByteBuf out) throws IOException {
- ByteBufUtils.writeNBT(out, compound);
+ protected byte[] getData() throws IOException {
+ ByteBuf buffer = Unpooled.buffer();
+ ByteBufUtils.writeBigNBT(buffer, compound);
+ byte[] bytes = new byte[buffer.readableBytes()];
+ buffer.readBytes(bytes);
+ return bytes;
}
@SideOnly(Side.CLIENT)
@Override
- public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ protected void handleCompleteData(ByteBuf data, EntityPlayer player) throws IOException {
GuiScreen gui = Minecraft.getMinecraft().currentScreen;
if (gui instanceof GuiNPCInterface && ((GuiNPCInterface) gui).hasSubGui()) {
gui = (GuiScreen) ((GuiNPCInterface) gui).getSubGui();
@@ -56,7 +61,7 @@ public final class GuiDataPacket extends AbstractPacket {
gui = (GuiScreen) ((GuiContainerNPCInterface) gui).getSubGui();
}
if (gui instanceof IGuiData) {
- NBTTagCompound nbt = ByteBufUtils.readNBT(in);
+ NBTTagCompound nbt = ByteBufUtils.readBigNBT(data);
((IGuiData) gui).setGuiData(nbt);
}
}
From a70300c54b653bde5a388b59b2a738cb735a9384 Mon Sep 17 00:00:00 2001
From: Kam
Date: Thu, 30 Jan 2025 10:32:01 -0500
Subject: [PATCH 029/357] Register More Packets + Remove Useless Sync Packets
---
.../kamkeel/npcs/network/PacketHandler.java | 14 +++--
.../client/{ => npc}/DialogPacket.java | 4 +-
.../packets/client/{ => npc}/RolePacket.java | 4 +-
.../packets/client/npc/UpdateNpcPacket.java | 11 +++-
.../script/ScriptOverlayClosePacket.java | 8 ++-
.../script/ScriptOverlayDataPacket.java | 12 ++++-
.../packets/client/sync/SyncConfigPacket.java | 42 ---------------
.../client/sync/SyncRecipesAddPacket.java | 50 ------------------
.../sync/SyncRecipesCarpentryBenchPacket.java | 41 ---------------
.../sync/SyncRecipesWorkbenchPacket.java | 42 ---------------
.../packets/client/sync/SyncWeaponPacket.java | 52 -------------------
.../java/noppes/npcs/NoppesUtilServer.java | 4 +-
.../npcs/client/PacketHandlerClient.java | 6 ---
.../npcs/constants/EnumPacketClient.java | 2 -
14 files changed, 39 insertions(+), 253 deletions(-)
rename src/main/java/kamkeel/npcs/network/packets/client/{ => npc}/DialogPacket.java (95%)
rename src/main/java/kamkeel/npcs/network/packets/client/{ => npc}/RolePacket.java (94%)
delete mode 100644 src/main/java/kamkeel/npcs/network/packets/client/sync/SyncConfigPacket.java
delete mode 100644 src/main/java/kamkeel/npcs/network/packets/client/sync/SyncRecipesAddPacket.java
delete mode 100644 src/main/java/kamkeel/npcs/network/packets/client/sync/SyncRecipesCarpentryBenchPacket.java
delete mode 100644 src/main/java/kamkeel/npcs/network/packets/client/sync/SyncRecipesWorkbenchPacket.java
delete mode 100644 src/main/java/kamkeel/npcs/network/packets/client/sync/SyncWeaponPacket.java
diff --git a/src/main/java/kamkeel/npcs/network/PacketHandler.java b/src/main/java/kamkeel/npcs/network/PacketHandler.java
index 7cce24566..4824b3186 100644
--- a/src/main/java/kamkeel/npcs/network/PacketHandler.java
+++ b/src/main/java/kamkeel/npcs/network/PacketHandler.java
@@ -10,9 +10,8 @@ import kamkeel.npcs.network.enums.EnumPacketType;
import kamkeel.npcs.network.packets.client.*;
import kamkeel.npcs.network.packets.client.gui.*;
import kamkeel.npcs.network.packets.client.large.*;
-import kamkeel.npcs.network.packets.client.npc.DeleteNpcPacket;
-import kamkeel.npcs.network.packets.client.npc.EditNpcPacket;
-import kamkeel.npcs.network.packets.client.script.ScriptedParticlePacket;
+import kamkeel.npcs.network.packets.client.npc.*;
+import kamkeel.npcs.network.packets.client.script.*;
import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.EntityPlayerMP;
@@ -48,17 +47,18 @@ public final class PacketHandler {
LARGE_PACKET.registerPacket(new LargeScrollDataPacket());
LARGE_PACKET.registerPacket(new LargeScrollListPacket());
LARGE_PACKET.registerPacket(new LargeSyncPacket());
+ LARGE_PACKET.registerPacket(new LargeGuiDataPacket());
// Client Packets
CLIENT_PACKET.registerPacket(new ChatBubblePacket());
CLIENT_PACKET.registerPacket(new ChatAlertPacket());
CLIENT_PACKET.registerPacket(new AchievementPacket());
- CLIENT_PACKET.registerPacket(new EditNpcPacket());
- CLIENT_PACKET.registerPacket(new RolePacket());
CLIENT_PACKET.registerPacket(new GuiTeleporterPacket());
CLIENT_PACKET.registerPacket(new SoundManagementPacket());
CLIENT_PACKET.registerPacket(new ParticlePacket());
CLIENT_PACKET.registerPacket(new ScriptedParticlePacket());
+ CLIENT_PACKET.registerPacket(new ScriptOverlayClosePacket());
+ CLIENT_PACKET.registerPacket(new ScriptOverlayDataPacket());
CLIENT_PACKET.registerPacket(new ConfigCommandPacket());
// Client | GUI Packets
@@ -70,6 +70,10 @@ public final class PacketHandler {
// Client | NPC Packets
CLIENT_PACKET.registerPacket(new DeleteNpcPacket());
+ CLIENT_PACKET.registerPacket(new EditNpcPacket());
+ CLIENT_PACKET.registerPacket(new UpdateNpcPacket());
+ CLIENT_PACKET.registerPacket(new DialogPacket());
+ CLIENT_PACKET.registerPacket(new RolePacket());
}
private void registerChannels() {
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/DialogPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/npc/DialogPacket.java
similarity index 95%
rename from src/main/java/kamkeel/npcs/network/packets/client/DialogPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/npc/DialogPacket.java
index c254b308d..0478b08ed 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/DialogPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/npc/DialogPacket.java
@@ -1,4 +1,4 @@
-package kamkeel.npcs.network.packets.client;
+package kamkeel.npcs.network.packets.client.npc;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
@@ -12,8 +12,6 @@ import net.minecraft.client.Minecraft;
import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.nbt.NBTTagCompound;
-import noppes.npcs.CustomNpcs;
-import noppes.npcs.Server;
import noppes.npcs.client.NoppesUtil;
import noppes.npcs.entity.EntityDialogNpc;
import noppes.npcs.entity.EntityNPCInterface;
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/RolePacket.java b/src/main/java/kamkeel/npcs/network/packets/client/npc/RolePacket.java
similarity index 94%
rename from src/main/java/kamkeel/npcs/network/packets/client/RolePacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/npc/RolePacket.java
index 2b088ca6f..a39ccd7fb 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/RolePacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/npc/RolePacket.java
@@ -1,4 +1,4 @@
-package kamkeel.npcs.network.packets.client;
+package kamkeel.npcs.network.packets.client.npc;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
@@ -12,8 +12,6 @@ import net.minecraft.client.Minecraft;
import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.nbt.NBTTagCompound;
-import noppes.npcs.CustomNpcs;
-import noppes.npcs.Server;
import noppes.npcs.client.NoppesUtil;
import noppes.npcs.entity.EntityNPCInterface;
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/npc/UpdateNpcPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/npc/UpdateNpcPacket.java
index 7fd6a281d..5174ba430 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/npc/UpdateNpcPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/npc/UpdateNpcPacket.java
@@ -7,6 +7,7 @@ import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.enums.EnumClientPacket;
+import kamkeel.npcs.util.ByteBufUtils;
import net.minecraft.client.Minecraft;
import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer;
@@ -20,8 +21,14 @@ import java.io.IOException;
public final class UpdateNpcPacket extends AbstractPacket {
public static final String packetName = "Client|UpdateNpc";
+ private NBTTagCompound npcCompound;
+
public UpdateNpcPacket() {}
+ public UpdateNpcPacket(NBTTagCompound npcCompound) {
+ this.npcCompound = npcCompound;
+ }
+
@Override
public Enum getType() {
return EnumClientPacket.UPDATE_NPC;
@@ -34,13 +41,13 @@ public final class UpdateNpcPacket extends AbstractPacket {
@Override
public void sendData(ByteBuf out) throws IOException {
- // TODO: Send Packet
+ ByteBufUtils.writeNBT(out, this.npcCompound);
}
@SideOnly(Side.CLIENT)
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- NBTTagCompound compound = Server.readNBT(in);
+ NBTTagCompound compound = ByteBufUtils.readNBT(in);
Entity entity = Minecraft.getMinecraft().theWorld.getEntityByID(compound.getInteger("EntityId"));
if (entity instanceof EntityNPCInterface) {
((EntityNPCInterface) entity).readSpawnData(compound);
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/script/ScriptOverlayClosePacket.java b/src/main/java/kamkeel/npcs/network/packets/client/script/ScriptOverlayClosePacket.java
index a7a6325b8..49032706d 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/script/ScriptOverlayClosePacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/script/ScriptOverlayClosePacket.java
@@ -15,8 +15,14 @@ import java.io.IOException;
public final class ScriptOverlayClosePacket extends AbstractPacket {
public static final String packetName = "Client|ScriptOverlayClose";
+ private int particleId;
+
public ScriptOverlayClosePacket() {}
+ public ScriptOverlayClosePacket(int particleId) {
+ this.particleId = particleId;
+ }
+
@Override
public Enum getType() {
return EnumClientPacket.SCRIPT_OVERLAY_CLOSE;
@@ -29,7 +35,7 @@ public final class ScriptOverlayClosePacket extends AbstractPacket {
@Override
public void sendData(ByteBuf out) throws IOException {
- // TODO: Send Packet
+ out.writeInt(this.particleId);
}
@SideOnly(Side.CLIENT)
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/script/ScriptOverlayDataPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/script/ScriptOverlayDataPacket.java
index c435e1ae1..631e5843d 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/script/ScriptOverlayDataPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/script/ScriptOverlayDataPacket.java
@@ -7,8 +7,10 @@ import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.enums.EnumClientPacket;
+import kamkeel.npcs.util.ByteBufUtils;
import net.minecraft.client.Minecraft;
import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.nbt.NBTTagCompound;
import noppes.npcs.Server;
import noppes.npcs.client.gui.customoverlay.OverlayCustom;
import noppes.npcs.client.ClientCacheHandler;
@@ -18,8 +20,14 @@ import java.io.IOException;
public final class ScriptOverlayDataPacket extends AbstractPacket {
public static final String packetName = "Client|ScriptOverlayData";
+ private NBTTagCompound overlayCompound;
+
public ScriptOverlayDataPacket() {}
+ public ScriptOverlayDataPacket(NBTTagCompound overlayCompound) {
+ this.overlayCompound = overlayCompound;
+ }
+
@Override
public Enum getType() {
return EnumClientPacket.SCRIPT_OVERLAY_DATA;
@@ -32,14 +40,14 @@ public final class ScriptOverlayDataPacket extends AbstractPacket {
@Override
public void sendData(ByteBuf out) throws IOException {
- // TODO: Send Packet
+ ByteBufUtils.writeNBT(out, this.overlayCompound);
}
@SideOnly(Side.CLIENT)
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
OverlayCustom overlayCustom = new OverlayCustom(Minecraft.getMinecraft());
- overlayCustom.setOverlayData(Server.readNBT(in));
+ overlayCustom.setOverlayData(ByteBufUtils.readNBT(in));
ClientCacheHandler.customOverlays.put(overlayCustom.overlay.getID(), overlayCustom);
}
}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncConfigPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncConfigPacket.java
deleted file mode 100644
index f1e6ad99f..000000000
--- a/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncConfigPacket.java
+++ /dev/null
@@ -1,42 +0,0 @@
-package kamkeel.npcs.network.packets.client.sync;
-
-import cpw.mods.fml.relauncher.Side;
-import cpw.mods.fml.relauncher.SideOnly;
-import io.netty.buffer.ByteBuf;
-import kamkeel.npcs.network.AbstractPacket;
-import kamkeel.npcs.network.PacketChannel;
-import kamkeel.npcs.network.PacketHandler;
-import kamkeel.npcs.network.enums.EnumClientPacket;
-import net.minecraft.entity.player.EntityPlayer;
-import net.minecraft.nbt.NBTTagCompound;
-import noppes.npcs.Server;
-
-import java.io.IOException;
-
-public final class SyncConfigPacket extends AbstractPacket {
- public static final String packetName = "Client|SyncConfig";
-
- public SyncConfigPacket() {}
-
- @Override
- public Enum getType() {
- return EnumClientPacket.SYNC_CONFIG;
- }
-
- @Override
- public PacketChannel getChannel() {
- return PacketHandler.CLIENT_PACKET;
- }
-
- @Override
- public void sendData(ByteBuf out) throws IOException {
- // TODO: Send Packet
- }
-
- @SideOnly(Side.CLIENT)
- @Override
- public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- NBTTagCompound configNBT = Server.readNBT(in);
- SyncController.receiveConfigs(configNBT);
- }
-}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncRecipesAddPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncRecipesAddPacket.java
deleted file mode 100644
index b3cd733f3..000000000
--- a/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncRecipesAddPacket.java
+++ /dev/null
@@ -1,50 +0,0 @@
-package kamkeel.npcs.network.packets.client.sync;
-
-import cpw.mods.fml.relauncher.Side;
-import cpw.mods.fml.relauncher.SideOnly;
-import io.netty.buffer.ByteBuf;
-import kamkeel.npcs.network.AbstractPacket;
-import kamkeel.npcs.network.PacketChannel;
-import kamkeel.npcs.network.PacketHandler;
-import kamkeel.npcs.network.enums.EnumClientPacket;
-import net.minecraft.entity.player.EntityPlayer;
-import net.minecraft.nbt.NBTTagList;
-import noppes.npcs.CustomNpcs;
-import noppes.npcs.Server;
-import noppes.npcs.controllers.RecipeController;
-import noppes.npcs.controllers.data.RecipeCarpentry;
-
-import java.io.IOException;
-
-public final class SyncRecipesAddPacket extends AbstractPacket {
- public static final String packetName = "Client|SyncRecipesAdd";
-
- public SyncRecipesAddPacket() {}
-
- @Override
- public Enum getType() {
- return EnumClientPacket.SYNCRECIPES_ADD;
- }
-
- @Override
- public PacketChannel getChannel() {
- return PacketHandler.CLIENT_PACKET;
- }
-
- @Override
- public void sendData(ByteBuf out) throws IOException {
- // TODO: Send Packet
- }
-
- @SideOnly(Side.CLIENT)
- @Override
- public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- NBTTagList list = Server.readNBT(in).getTagList("recipes", 10);
- if (list != null) {
- for (int i = 0; i < list.tagCount(); i++) {
- RecipeCarpentry recipe = RecipeCarpentry.read(list.getCompoundTagAt(i));
- RecipeController.syncRecipes.put(recipe.id, recipe);
- }
- }
- }
-}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncRecipesCarpentryBenchPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncRecipesCarpentryBenchPacket.java
deleted file mode 100644
index c82b39987..000000000
--- a/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncRecipesCarpentryBenchPacket.java
+++ /dev/null
@@ -1,41 +0,0 @@
-package kamkeel.npcs.network.packets.client.sync;
-
-import cpw.mods.fml.relauncher.Side;
-import cpw.mods.fml.relauncher.SideOnly;
-import io.netty.buffer.ByteBuf;
-import kamkeel.npcs.network.AbstractPacket;
-import kamkeel.npcs.network.PacketChannel;
-import kamkeel.npcs.network.PacketHandler;
-import kamkeel.npcs.network.enums.EnumClientPacket;
-import net.minecraft.entity.player.EntityPlayer;
-import noppes.npcs.controllers.RecipeController;
-
-import java.io.IOException;
-
-public final class SyncRecipesCarpentryBenchPacket extends AbstractPacket {
- public static final String packetName = "Client|SyncRecipesCarpentryBench";
-
- public SyncRecipesCarpentryBenchPacket() {}
-
- @Override
- public Enum getType() {
- return EnumClientPacket.SYNCRECIPES_CARPENTRYBENCH;
- }
-
- @Override
- public PacketChannel getChannel() {
- return PacketHandler.CLIENT_PACKET;
- }
-
- @Override
- public void sendData(ByteBuf out) throws IOException {
- // TODO: Send Packet
- }
-
- @SideOnly(Side.CLIENT)
- @Override
- public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- RecipeController.Instance.carpentryRecipes = RecipeController.syncRecipes;
- RecipeController.syncRecipes.clear();
- }
-}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncRecipesWorkbenchPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncRecipesWorkbenchPacket.java
deleted file mode 100644
index 2b489d00a..000000000
--- a/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncRecipesWorkbenchPacket.java
+++ /dev/null
@@ -1,42 +0,0 @@
-package kamkeel.npcs.network.packets.client.sync;
-
-import cpw.mods.fml.relauncher.Side;
-import cpw.mods.fml.relauncher.SideOnly;
-import io.netty.buffer.ByteBuf;
-import kamkeel.npcs.network.AbstractPacket;
-import kamkeel.npcs.network.PacketChannel;
-import kamkeel.npcs.network.PacketHandler;
-import kamkeel.npcs.network.enums.EnumClientPacket;
-import net.minecraft.entity.player.EntityPlayer;
-import noppes.npcs.CustomNpcs;
-import noppes.npcs.controllers.RecipeController;
-
-import java.io.IOException;
-
-public final class SyncRecipesWorkbenchPacket extends AbstractPacket {
- public static final String packetName = "Client|SyncRecipesWorkbench";
-
- public SyncRecipesWorkbenchPacket() {}
-
- @Override
- public Enum getType() {
- return EnumClientPacket.SYNCRECIPES_WORKBENCH;
- }
-
- @Override
- public PacketChannel getChannel() {
- return PacketHandler.CLIENT_PACKET;
- }
-
- @Override
- public void sendData(ByteBuf out) throws IOException {
- // TODO: Send Packet
- }
-
- @SideOnly(Side.CLIENT)
- @Override
- public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- RecipeController.reloadGlobalRecipes(RecipeController.syncRecipes);
- RecipeController.syncRecipes.clear();
- }
-}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncWeaponPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncWeaponPacket.java
deleted file mode 100644
index 9640fa422..000000000
--- a/src/main/java/kamkeel/npcs/network/packets/client/sync/SyncWeaponPacket.java
+++ /dev/null
@@ -1,52 +0,0 @@
-package kamkeel.npcs.network.packets.client.sync;
-
-import cpw.mods.fml.relauncher.Side;
-import cpw.mods.fml.relauncher.SideOnly;
-import io.netty.buffer.ByteBuf;
-import kamkeel.npcs.network.AbstractPacket;
-import kamkeel.npcs.network.PacketChannel;
-import kamkeel.npcs.network.PacketHandler;
-import kamkeel.npcs.network.enums.EnumClientPacket;
-import net.minecraft.entity.Entity;
-import net.minecraft.entity.player.EntityPlayer;
-import net.minecraft.item.ItemStack;
-import net.minecraft.nbt.NBTTagCompound;
-import noppes.npcs.CustomNpcs;
-import noppes.npcs.Server;
-import noppes.npcs.entity.EntityNPCInterface;
-
-import java.io.IOException;
-
-public final class SyncWeaponPacket extends AbstractPacket {
- public static final String packetName = "Client|SyncWeapon";
-
- public SyncWeaponPacket() {}
-
- @Override
- public Enum getType() {
- return EnumClientPacket.SYNC_WEAPON;
- }
-
- @Override
- public PacketChannel getChannel() {
- return PacketHandler.CLIENT_PACKET;
- }
-
- @Override
- public void sendData(ByteBuf out) throws IOException {
- // TODO: Send Packet
- }
-
- @SideOnly(Side.CLIENT)
- @Override
- public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- Entity entity = player.worldObj.getEntityByID(in.readInt());
- if (!(entity instanceof EntityNPCInterface)) return;
-
- EntityNPCInterface npc = (EntityNPCInterface) entity;
- int weaponSlotIndex = in.readInt();
- NBTTagCompound nbt = Server.readNBT(in);
- ItemStack stack = ItemStack.loadItemStackFromNBT(nbt);
- npc.inventory.weapons.put(weaponSlotIndex, stack);
- }
-}
diff --git a/src/main/java/noppes/npcs/NoppesUtilServer.java b/src/main/java/noppes/npcs/NoppesUtilServer.java
index d81bc9abe..101823217 100644
--- a/src/main/java/noppes/npcs/NoppesUtilServer.java
+++ b/src/main/java/noppes/npcs/NoppesUtilServer.java
@@ -4,12 +4,12 @@ import io.netty.buffer.ByteBuf;
import kamkeel.npcs.controllers.SyncController;
import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.PacketUtil;
-import kamkeel.npcs.network.packets.client.DialogPacket;
+import kamkeel.npcs.network.packets.client.npc.DialogPacket;
import kamkeel.npcs.network.packets.client.ParticlePacket;
import kamkeel.npcs.network.packets.client.script.ScriptedParticlePacket;
import kamkeel.npcs.network.packets.client.npc.DeleteNpcPacket;
import kamkeel.npcs.network.packets.client.npc.EditNpcPacket;
-import kamkeel.npcs.network.packets.client.RolePacket;
+import kamkeel.npcs.network.packets.client.npc.RolePacket;
import kamkeel.npcs.network.packets.client.gui.GuiTeleporterPacket;
import kamkeel.npcs.util.ByteBufUtils;
import net.minecraft.command.server.CommandBlockLogic;
diff --git a/src/main/java/noppes/npcs/client/PacketHandlerClient.java b/src/main/java/noppes/npcs/client/PacketHandlerClient.java
index fd9be163d..169e7613a 100644
--- a/src/main/java/noppes/npcs/client/PacketHandlerClient.java
+++ b/src/main/java/noppes/npcs/client/PacketHandlerClient.java
@@ -48,12 +48,6 @@ public class PacketHandlerClient extends PacketHandlerServer{
MarkData data = MarkData.get((EntityNPCInterface) entity);
data.setNBT(Server.readNBT(buffer));
}
- else if(type == EnumPacketClient.DIALOG){
- Entity entity = Minecraft.getMinecraft().theWorld.getEntityByID(buffer.readInt());
- if(entity == null || !(entity instanceof EntityNPCInterface))
- return;
- NoppesUtil.openDialog(Server.readNBT(buffer), (EntityNPCInterface) entity, player);
- }
else if(type == EnumPacketClient.QUEST_COMPLETION){
NoppesUtil.guiQuestCompletion(player, Server.readNBT(buffer));
}
diff --git a/src/main/java/noppes/npcs/constants/EnumPacketClient.java b/src/main/java/noppes/npcs/constants/EnumPacketClient.java
index a372477a4..b7f749e20 100644
--- a/src/main/java/noppes/npcs/constants/EnumPacketClient.java
+++ b/src/main/java/noppes/npcs/constants/EnumPacketClient.java
@@ -2,7 +2,6 @@ package
noppes.npcs.constants;
public enum EnumPacketClient {
- DIALOG,
QUEST_COMPLETION,
UPDATE_NPC,
ROLE,
@@ -19,7 +18,6 @@ public enum EnumPacketClient {
SCRIPT_OVERLAY_DATA,
SCRIPT_OVERLAY_CLOSE,
SWING_PLAYER_ARM,
- UPDATE_ITEM,
PLAYER_UPDATE_SKIN_OVERLAYS,
UPDATE_ANIMATIONS,
OVERLAY_QUEST_TRACKING,
From 4f5f870e2bce1cd3c1c49cd872b96837dc6bba78 Mon Sep 17 00:00:00 2001
From: Kam
Date: Thu, 30 Jan 2025 11:03:52 -0500
Subject: [PATCH 030/357] More Packet Swapping
---
.../kamkeel/npcs/network/PacketHandler.java | 44 ++++++++++++++-----
.../client/DisableMouseInputPacket.java | 13 +++++-
.../PlayerUpdateSkinOverlaysPacket.java | 16 +++++--
.../client/UpdateAnimationsPacket.java | 16 +++++--
.../LargePartyDataPacket.java} | 32 +++++++++-----
.../java/noppes/npcs/PacketHandlerServer.java | 8 ++--
6 files changed, 96 insertions(+), 33 deletions(-)
rename src/main/java/kamkeel/npcs/network/packets/client/{PartyDataPacket.java => large/LargePartyDataPacket.java} (61%)
diff --git a/src/main/java/kamkeel/npcs/network/PacketHandler.java b/src/main/java/kamkeel/npcs/network/PacketHandler.java
index 4824b3186..cd01b870a 100644
--- a/src/main/java/kamkeel/npcs/network/PacketHandler.java
+++ b/src/main/java/kamkeel/npcs/network/PacketHandler.java
@@ -40,33 +40,50 @@ public final class PacketHandler {
packetChannels.add(DATA_PACKET);
packetChannels.add(CLIENT_PACKET);
packetChannels.add(LARGE_PACKET);
- this.registerChannels();
+ this.registerChannels();
+ this.registerLargePackets();
+ this.registerClientPackets();
+ }
+
+ public void registerLargePackets(){
// Large Packets
LARGE_PACKET.registerPacket(new LargeScrollGroupPacket());
LARGE_PACKET.registerPacket(new LargeScrollDataPacket());
LARGE_PACKET.registerPacket(new LargeScrollListPacket());
LARGE_PACKET.registerPacket(new LargeSyncPacket());
LARGE_PACKET.registerPacket(new LargeGuiDataPacket());
+ LARGE_PACKET.registerPacket(new LargePartyDataPacket());
+ }
+ public void registerClientPackets(){
// Client Packets
- CLIENT_PACKET.registerPacket(new ChatBubblePacket());
- CLIENT_PACKET.registerPacket(new ChatAlertPacket());
CLIENT_PACKET.registerPacket(new AchievementPacket());
- CLIENT_PACKET.registerPacket(new GuiTeleporterPacket());
- CLIENT_PACKET.registerPacket(new SoundManagementPacket());
- CLIENT_PACKET.registerPacket(new ParticlePacket());
- CLIENT_PACKET.registerPacket(new ScriptedParticlePacket());
- CLIENT_PACKET.registerPacket(new ScriptOverlayClosePacket());
- CLIENT_PACKET.registerPacket(new ScriptOverlayDataPacket());
+ CLIENT_PACKET.registerPacket(new ChatAlertPacket());
+ CLIENT_PACKET.registerPacket(new ChatBubblePacket());
CLIENT_PACKET.registerPacket(new ConfigCommandPacket());
+ CLIENT_PACKET.registerPacket(new DisableMouseInputPacket());
+ CLIENT_PACKET.registerPacket(new MarkDataPacket());
+ CLIENT_PACKET.registerPacket(new OverlayQuestTrackingPacket());
+ CLIENT_PACKET.registerPacket(new ParticlePacket());
+ CLIENT_PACKET.registerPacket(new PlayerUpdateSkinOverlaysPacket());
+ CLIENT_PACKET.registerPacket(new QuestCompletionPacket());
+ CLIENT_PACKET.registerPacket(new ScrollSelectedPacket());
+ CLIENT_PACKET.registerPacket(new SoundManagementPacket());
+ CLIENT_PACKET.registerPacket(new SwingPlayerArmPacket());
+ CLIENT_PACKET.registerPacket(new UpdateAnimationsPacket());
+ CLIENT_PACKET.registerPacket(new VillagerListPacket());
// Client | GUI Packets
+ CLIENT_PACKET.registerPacket(new GuiClonerPacket());
CLIENT_PACKET.registerPacket(new GuiClosePacket());
CLIENT_PACKET.registerPacket(new GuiOpenPacket());
CLIENT_PACKET.registerPacket(new GuiErrorPacket());
- CLIENT_PACKET.registerPacket(new LargeGuiDataPacket());
- CLIENT_PACKET.registerPacket(new GuiClonerPacket());
+ CLIENT_PACKET.registerPacket(new GuiRedstonePacket());
+ CLIENT_PACKET.registerPacket(new GuiTeleporterPacket());
+ CLIENT_PACKET.registerPacket(new GuiWaypointPacket());
+ CLIENT_PACKET.registerPacket(new IsGuiOpenPacket());
+ CLIENT_PACKET.registerPacket(new OpenBookPacket());
// Client | NPC Packets
CLIENT_PACKET.registerPacket(new DeleteNpcPacket());
@@ -74,6 +91,11 @@ public final class PacketHandler {
CLIENT_PACKET.registerPacket(new UpdateNpcPacket());
CLIENT_PACKET.registerPacket(new DialogPacket());
CLIENT_PACKET.registerPacket(new RolePacket());
+
+ // Client | Script Packets
+ CLIENT_PACKET.registerPacket(new ScriptedParticlePacket());
+ CLIENT_PACKET.registerPacket(new ScriptOverlayClosePacket());
+ CLIENT_PACKET.registerPacket(new ScriptOverlayDataPacket());
}
private void registerChannels() {
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/DisableMouseInputPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/DisableMouseInputPacket.java
index a94e52bb0..806d6f3a2 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/DisableMouseInputPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/DisableMouseInputPacket.java
@@ -7,8 +7,8 @@ import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.enums.EnumClientPacket;
+import kamkeel.npcs.util.ByteBufUtils;
import net.minecraft.entity.player.EntityPlayer;
-import noppes.npcs.CustomNpcs;
import noppes.npcs.Server;
import noppes.npcs.client.ClientEventHandler;
@@ -17,8 +17,16 @@ import java.io.IOException;
public final class DisableMouseInputPacket extends AbstractPacket {
public static final String packetName = "Client|DisableMouseInput";
+ private long duration;
+ private String keys;
+
public DisableMouseInputPacket() {}
+ public DisableMouseInputPacket(long duration, String keys) {
+ this.duration = duration;
+ this.keys = keys;
+ }
+
@Override
public Enum getType() {
return EnumClientPacket.DISABLE_MOUSE_INPUT;
@@ -31,7 +39,8 @@ public final class DisableMouseInputPacket extends AbstractPacket {
@Override
public void sendData(ByteBuf out) throws IOException {
- // TODO: Send Packet
+ out.writeLong(this.duration);
+ ByteBufUtils.writeString(out, this.keys);
}
@SideOnly(Side.CLIENT)
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/PlayerUpdateSkinOverlaysPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/PlayerUpdateSkinOverlaysPacket.java
index efdb92eab..e92f9c75b 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/PlayerUpdateSkinOverlaysPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/PlayerUpdateSkinOverlaysPacket.java
@@ -7,6 +7,7 @@ import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.enums.EnumClientPacket;
+import kamkeel.npcs.util.ByteBufUtils;
import net.minecraft.client.Minecraft;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.nbt.NBTTagCompound;
@@ -19,8 +20,16 @@ import java.io.IOException;
public final class PlayerUpdateSkinOverlaysPacket extends AbstractPacket {
public static final String packetName = "Client|PlayerUpdateSkinOverlays";
+ private String playerName;
+ private NBTTagCompound compound;
+
public PlayerUpdateSkinOverlaysPacket() {}
+ public PlayerUpdateSkinOverlaysPacket(String playerName, NBTTagCompound compound) {
+ this.playerName = playerName;
+ this.compound = compound;
+ }
+
@Override
public Enum getType() {
return EnumClientPacket.PLAYER_UPDATE_SKIN_OVERLAYS;
@@ -33,14 +42,15 @@ public final class PlayerUpdateSkinOverlaysPacket extends AbstractPacket {
@Override
public void sendData(ByteBuf out) throws IOException {
- // TODO: Send Packet
+ ByteBufUtils.writeString(out, this.playerName);
+ ByteBufUtils.writeNBT(out, this.compound);
}
@SideOnly(Side.CLIENT)
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- String playerName = Server.readString(in);
- NBTTagCompound nbt = Server.readNBT(in);
+ String playerName = ByteBufUtils.readString(in);
+ NBTTagCompound nbt = ByteBufUtils.readNBT(in);
EntityPlayer sendingPlayer = Minecraft.getMinecraft().theWorld.getPlayerEntityByName(playerName);
if (sendingPlayer != null) {
NoppesUtil.updateSkinOverlayData(sendingPlayer, nbt);
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/UpdateAnimationsPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/UpdateAnimationsPacket.java
index 57f14ce49..81977a264 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/UpdateAnimationsPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/UpdateAnimationsPacket.java
@@ -7,6 +7,7 @@ import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.enums.EnumClientPacket;
+import kamkeel.npcs.util.ByteBufUtils;
import net.minecraft.client.Minecraft;
import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer;
@@ -23,8 +24,16 @@ import java.io.IOException;
public final class UpdateAnimationsPacket extends AbstractPacket {
public static final String packetName = "Client|UpdateAnimations";
+ private NBTTagCompound animationCompound;
+ private String playername;
+
public UpdateAnimationsPacket() {}
+ public UpdateAnimationsPacket(NBTTagCompound animationCompound, String playername) {
+ this.animationCompound = animationCompound;
+ this.playername = playername;
+ }
+
@Override
public Enum getType() {
return EnumClientPacket.UPDATE_ANIMATIONS;
@@ -37,13 +46,14 @@ public final class UpdateAnimationsPacket extends AbstractPacket {
@Override
public void sendData(ByteBuf out) throws IOException {
- // TODO: Send Packet
+ ByteBufUtils.writeNBT(out, this.animationCompound);
+ ByteBufUtils.writeString(out, this.playername);
}
@SideOnly(Side.CLIENT)
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- NBTTagCompound nbt = Server.readNBT(in);
+ NBTTagCompound nbt = ByteBufUtils.readNBT(in);
AnimationData animationData = null;
if (nbt.hasKey("EntityId")) {
@@ -52,7 +62,7 @@ public final class UpdateAnimationsPacket extends AbstractPacket {
animationData = ((EntityNPCInterface) entity).display.animationData;
}
} else {
- String playerName = Server.readString(in);
+ String playerName = ByteBufUtils.readString(in);
EntityPlayer sendingPlayer = Minecraft.getMinecraft().theWorld.getPlayerEntityByName(playerName);
if (sendingPlayer != null) {
if (!ClientCacheHandler.playerAnimations.containsKey(sendingPlayer.getUniqueID())) {
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/PartyDataPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/large/LargePartyDataPacket.java
similarity index 61%
rename from src/main/java/kamkeel/npcs/network/packets/client/PartyDataPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/large/LargePartyDataPacket.java
index 6bdbc2023..b7b40c2dc 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/PartyDataPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/large/LargePartyDataPacket.java
@@ -1,28 +1,36 @@
-package kamkeel.npcs.network.packets.client;
+package kamkeel.npcs.network.packets.client.large;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import io.netty.buffer.ByteBuf;
-import kamkeel.npcs.network.AbstractPacket;
+import io.netty.buffer.Unpooled;
+import kamkeel.npcs.network.LargeAbstractPacket;
import kamkeel.npcs.network.PacketChannel;
import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.enums.EnumClientPacket;
+import kamkeel.npcs.util.ByteBufUtils;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.GuiScreen;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.nbt.NBTTagCompound;
-import noppes.npcs.CustomNpcs;
import noppes.npcs.Server;
import noppes.npcs.client.gui.util.GuiContainerNPCInterface;
import noppes.npcs.client.gui.util.GuiNPCInterface;
+import noppes.npcs.client.gui.util.IGuiData;
import noppes.npcs.client.gui.util.IPartyData;
import java.io.IOException;
-public final class PartyDataPacket extends AbstractPacket {
+public final class LargePartyDataPacket extends LargeAbstractPacket {
public static final String packetName = "Client|PartyData";
- public PartyDataPacket() {}
+ private NBTTagCompound compound;
+
+ public LargePartyDataPacket(){}
+
+ public LargePartyDataPacket(NBTTagCompound comp){
+ this.compound = comp;
+ }
@Override
public Enum getType() {
@@ -31,17 +39,21 @@ public final class PartyDataPacket extends AbstractPacket {
@Override
public PacketChannel getChannel() {
- return PacketHandler.CLIENT_PACKET;
+ return PacketHandler.LARGE_PACKET;
}
@Override
- public void sendData(ByteBuf out) throws IOException {
- // TODO: Send Packet
+ protected byte[] getData() throws IOException {
+ ByteBuf buffer = Unpooled.buffer();
+ ByteBufUtils.writeBigNBT(buffer, compound);
+ byte[] bytes = new byte[buffer.readableBytes()];
+ buffer.readBytes(bytes);
+ return bytes;
}
@SideOnly(Side.CLIENT)
@Override
- public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ protected void handleCompleteData(ByteBuf data, EntityPlayer player) throws IOException {
GuiScreen gui = Minecraft.getMinecraft().currentScreen;
if (gui instanceof GuiNPCInterface && ((GuiNPCInterface) gui).hasSubGui()) {
gui = (GuiScreen) ((GuiNPCInterface) gui).getSubGui();
@@ -49,7 +61,7 @@ public final class PartyDataPacket extends AbstractPacket {
gui = (GuiScreen) ((GuiContainerNPCInterface) gui).getSubGui();
}
if (gui instanceof IPartyData) {
- NBTTagCompound nbt = Server.readNBT(in);
+ NBTTagCompound nbt = ByteBufUtils.readBigNBT(data);
((IPartyData) gui).setPartyData(nbt);
}
}
diff --git a/src/main/java/noppes/npcs/PacketHandlerServer.java b/src/main/java/noppes/npcs/PacketHandlerServer.java
index 7b5f99866..8f7267409 100644
--- a/src/main/java/noppes/npcs/PacketHandlerServer.java
+++ b/src/main/java/noppes/npcs/PacketHandlerServer.java
@@ -688,7 +688,7 @@ public class PacketHandlerServer{
list.add(data.name);
PacketUtil.sendList((EntityPlayerMP)player, list);
if(npc != null)
- Server.sendData(player, EnumPacketClient.SCROLL_SELECTED, npc.linkedName);
+ PacketUtil.setSelectedList(player, npc.linkedName);
}
else if(type == EnumPacketServer.LinkedSet){
npc.linkedName = Server.readString(buffer);
@@ -754,10 +754,10 @@ public class PacketHandlerServer{
}
else if(type == EnumPacketServer.RemoteFreeze){
CustomNpcs.FreezeNPCs = !CustomNpcs.FreezeNPCs;
- Server.sendData(player, EnumPacketClient.SCROLL_SELECTED, CustomNpcs.FreezeNPCs?"Unfreeze NPCs":"Freeze NPCs");
+ PacketUtil.setSelectedList(player, CustomNpcs.FreezeNPCs?"Unfreeze NPCs":"Freeze NPCs");
}
else if(type == EnumPacketServer.RemoteFreezeGet){
- Server.sendData(player, EnumPacketClient.SCROLL_SELECTED, CustomNpcs.FreezeNPCs?"Unfreeze NPCs":"Freeze NPCs");
+ PacketUtil.setSelectedList(player, CustomNpcs.FreezeNPCs?"Unfreeze NPCs":"Freeze NPCs");
}
else if(type == EnumPacketServer.RemoteReset){
Entity entity = player.worldObj.getEntityByID(buffer.readInt());
@@ -981,7 +981,7 @@ public class PacketHandlerServer{
RoleTransporter role = (RoleTransporter) npc.roleInterface;
if(role.hasTransport()){
Server.sendData(player,EnumPacketClient.GUI_DATA,role.getLocation().writeNBT());
- Server.sendData(player, EnumPacketClient.SCROLL_SELECTED,role.getLocation().category.title);
+ PacketUtil.setSelectedList(player, role.getLocation().category.title);
}
}
else if(type == EnumPacketServer.FactionSet){
From e8c3fc4d0a41d587c91264210d3c36ab40ba2537 Mon Sep 17 00:00:00 2001
From: Kam
Date: Thu, 30 Jan 2025 11:03:57 -0500
Subject: [PATCH 031/357] MORE SWAPPING
---
.../java/kamkeel/npcs/network/PacketUtil.java | 12 +++++++
.../packets/client/MarkDataPacket.java | 14 +++++++--
.../client/OverlayQuestTrackingPacket.java | 9 +++++-
.../packets/client/QuestCompletionPacket.java | 12 +++++--
.../packets/client/ScrollSelectedPacket.java | 9 +++++-
.../packets/client/SwingPlayerArmPacket.java | 4 +--
.../packets/client/VillagerListPacket.java | 9 +++++-
.../java/noppes/npcs/NoppesUtilPlayer.java | 2 +-
.../java/noppes/npcs/ServerEventsHandler.java | 5 +--
.../java/noppes/npcs/blocks/BlockMailbox.java | 30 +++++++++---------
.../npcs/client/PacketHandlerClient.java | 31 -------------------
.../npcs/constants/EnumPacketClient.java | 5 ---
.../noppes/npcs/controllers/data/Quest.java | 3 +-
.../npcs/entity/EntityNPCInterface.java | 8 +++--
14 files changed, 86 insertions(+), 67 deletions(-)
diff --git a/src/main/java/kamkeel/npcs/network/PacketUtil.java b/src/main/java/kamkeel/npcs/network/PacketUtil.java
index c44eae29b..0afb9cb1d 100644
--- a/src/main/java/kamkeel/npcs/network/PacketUtil.java
+++ b/src/main/java/kamkeel/npcs/network/PacketUtil.java
@@ -2,6 +2,8 @@ package kamkeel.npcs.network;
import kamkeel.npcs.network.packets.client.ChatAlertPacket;
import kamkeel.npcs.network.packets.client.AchievementPacket;
+import kamkeel.npcs.network.packets.client.QuestCompletionPacket;
+import kamkeel.npcs.network.packets.client.ScrollSelectedPacket;
import kamkeel.npcs.network.packets.client.gui.GuiClosePacket;
import kamkeel.npcs.network.packets.client.large.LargeGuiDataPacket;
import kamkeel.npcs.network.packets.client.gui.GuiErrorPacket;
@@ -62,4 +64,14 @@ public class PacketUtil {
LargeGuiDataPacket packet = new LargeGuiDataPacket(compound);
PacketHandler.Instance.sendToPlayer(packet, playerMP);
}
+
+ public static void sendQuestComplete(EntityPlayerMP playerMP, NBTTagCompound compound){
+ QuestCompletionPacket packet = new QuestCompletionPacket(compound);
+ PacketHandler.Instance.sendToPlayer(packet, playerMP);
+ }
+
+ public static void setSelectedList(EntityPlayerMP playerMP, String item){
+ ScrollSelectedPacket packet = new ScrollSelectedPacket(item);
+ PacketHandler.Instance.sendToPlayer(packet, playerMP);
+ }
}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/MarkDataPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/MarkDataPacket.java
index 86f58f0fc..193ee560f 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/MarkDataPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/MarkDataPacket.java
@@ -7,6 +7,7 @@ import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.enums.EnumClientPacket;
+import kamkeel.npcs.util.ByteBufUtils;
import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.nbt.NBTTagCompound;
@@ -20,8 +21,16 @@ import java.io.IOException;
public final class MarkDataPacket extends AbstractPacket {
public static final String packetName = "Client|MarkData";
+ private int entityID;
+ private NBTTagCompound compound;
+
public MarkDataPacket() {}
+ public MarkDataPacket(int entityID, NBTTagCompound compound) {
+ this.entityID = entityID;
+ this.compound = compound;
+ }
+
@Override
public Enum getType() {
return EnumClientPacket.MARK_DATA;
@@ -34,7 +43,8 @@ public final class MarkDataPacket extends AbstractPacket {
@Override
public void sendData(ByteBuf out) throws IOException {
- // TODO: Send Packet
+ out.writeInt(this.entityID);
+ ByteBufUtils.writeNBT(out, this.compound);
}
@SideOnly(Side.CLIENT)
@@ -44,7 +54,7 @@ public final class MarkDataPacket extends AbstractPacket {
if (!(entity instanceof EntityNPCInterface)) return;
EntityNPCInterface npc = (EntityNPCInterface) entity;
- NBTTagCompound nbt = Server.readNBT(in);
+ NBTTagCompound nbt = ByteBufUtils.readNBT(in);
MarkData data = MarkData.get(npc);
data.setNBT(nbt);
}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/OverlayQuestTrackingPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/OverlayQuestTrackingPacket.java
index ec7e42fa9..70a8be71f 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/OverlayQuestTrackingPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/OverlayQuestTrackingPacket.java
@@ -7,6 +7,7 @@ import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.enums.EnumClientPacket;
+import kamkeel.npcs.util.ByteBufUtils;
import net.minecraft.client.Minecraft;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.nbt.NBTTagCompound;
@@ -20,8 +21,14 @@ import java.io.IOException;
public final class OverlayQuestTrackingPacket extends AbstractPacket {
public static final String packetName = "Client|OverlayQuestTracking";
+ private NBTTagCompound compound;
+
public OverlayQuestTrackingPacket() {}
+ public OverlayQuestTrackingPacket(NBTTagCompound compound) {
+ this.compound = compound;
+ }
+
@Override
public Enum getType() {
return EnumClientPacket.OVERLAY_QUEST_TRACKING;
@@ -34,7 +41,7 @@ public final class OverlayQuestTrackingPacket extends AbstractPacket {
@Override
public void sendData(ByteBuf out) throws IOException {
- // TODO: Send Packet
+ ByteBufUtils.writeNBT(out, compound);
}
@SideOnly(Side.CLIENT)
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/QuestCompletionPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/QuestCompletionPacket.java
index 951edf70a..cf8178bd4 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/QuestCompletionPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/QuestCompletionPacket.java
@@ -7,7 +7,9 @@ import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.enums.EnumClientPacket;
+import kamkeel.npcs.util.ByteBufUtils;
import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.nbt.NBTTagCompound;
import noppes.npcs.CustomNpcs;
import noppes.npcs.Server;
import noppes.npcs.client.NoppesUtil;
@@ -17,8 +19,14 @@ import java.io.IOException;
public final class QuestCompletionPacket extends AbstractPacket {
public static final String packetName = "Client|QuestCompletion";
+ private NBTTagCompound compound;
+
public QuestCompletionPacket() {}
+ public QuestCompletionPacket(NBTTagCompound compound) {
+ this.compound = compound;
+ }
+
@Override
public Enum getType() {
return EnumClientPacket.QUEST_COMPLETION;
@@ -31,12 +39,12 @@ public final class QuestCompletionPacket extends AbstractPacket {
@Override
public void sendData(ByteBuf out) throws IOException {
- // TODO: Send Packet
+ ByteBufUtils.writeNBT(out, this.compound);
}
@SideOnly(Side.CLIENT)
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- NoppesUtil.guiQuestCompletion(player, Server.readNBT(in));
+ NoppesUtil.guiQuestCompletion(player, ByteBufUtils.readNBT(in));
}
}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/ScrollSelectedPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/ScrollSelectedPacket.java
index d705df2de..a43bdc77f 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/ScrollSelectedPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/ScrollSelectedPacket.java
@@ -7,6 +7,7 @@ import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.enums.EnumClientPacket;
+import kamkeel.npcs.util.ByteBufUtils;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.GuiScreen;
import net.minecraft.entity.player.EntityPlayer;
@@ -19,8 +20,14 @@ import java.io.IOException;
public final class ScrollSelectedPacket extends AbstractPacket {
public static final String packetName = "Client|ScrollSelected";
+ private String selected;
+
public ScrollSelectedPacket() {}
+ public ScrollSelectedPacket(String selected) {
+ this.selected = selected;
+ }
+
@Override
public Enum getType() {
return EnumClientPacket.SCROLL_SELECTED;
@@ -33,7 +40,7 @@ public final class ScrollSelectedPacket extends AbstractPacket {
@Override
public void sendData(ByteBuf out) throws IOException {
- // TODO: Send Packet
+ ByteBufUtils.writeString(out, this.selected);
}
@SideOnly(Side.CLIENT)
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/SwingPlayerArmPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/SwingPlayerArmPacket.java
index 56217ae4b..fa3978e34 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/SwingPlayerArmPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/SwingPlayerArmPacket.java
@@ -29,9 +29,7 @@ public final class SwingPlayerArmPacket extends AbstractPacket {
}
@Override
- public void sendData(ByteBuf out) throws IOException {
- // TODO: Send Packet
- }
+ public void sendData(ByteBuf out) throws IOException {}
@SideOnly(Side.CLIENT)
@Override
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/VillagerListPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/VillagerListPacket.java
index 8f67e4fe6..2b56d4ffd 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/VillagerListPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/VillagerListPacket.java
@@ -7,6 +7,7 @@ import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.enums.EnumClientPacket;
+import kamkeel.npcs.util.ByteBufUtils;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.network.PacketBuffer;
import noppes.npcs.CustomNpcs;
@@ -18,8 +19,14 @@ import java.io.IOException;
public final class VillagerListPacket extends AbstractPacket {
public static final String packetName = "Client|VillagerList";
+ private MerchantRecipeList merchantrecipelist;
+
public VillagerListPacket() {}
+ public VillagerListPacket(MerchantRecipeList merchantrecipelist) {
+ this.merchantrecipelist = merchantrecipelist;
+ }
+
@Override
public Enum getType() {
return EnumClientPacket.VILLAGER_LIST;
@@ -32,7 +39,7 @@ public final class VillagerListPacket extends AbstractPacket {
@Override
public void sendData(ByteBuf out) throws IOException {
- // TODO: Send Packet
+ ByteBufUtils.fillBuffer(out, merchantrecipelist);
}
@SideOnly(Side.CLIENT)
diff --git a/src/main/java/noppes/npcs/NoppesUtilPlayer.java b/src/main/java/noppes/npcs/NoppesUtilPlayer.java
index 3802edca2..cfdd0f1c6 100644
--- a/src/main/java/noppes/npcs/NoppesUtilPlayer.java
+++ b/src/main/java/noppes/npcs/NoppesUtilPlayer.java
@@ -630,7 +630,7 @@ public class NoppesUtilPlayer {
}
playerData.save();
- Server.sendData((EntityPlayerMP)player, EnumPacketClient.QUEST_COMPLETION, data.quest.writeToNBT(new NBTTagCompound()));
+ PacketUtil.sendQuestComplete((EntityPlayerMP)player, data.quest.writeToNBT(new NBTTagCompound()));
}
if(quest.type == EnumQuestType.Item && partyOptions.objectiveRequirement == EnumPartyObjectives.Shared){
diff --git a/src/main/java/noppes/npcs/ServerEventsHandler.java b/src/main/java/noppes/npcs/ServerEventsHandler.java
index 3e59a2325..ff3eec5b8 100644
--- a/src/main/java/noppes/npcs/ServerEventsHandler.java
+++ b/src/main/java/noppes/npcs/ServerEventsHandler.java
@@ -5,6 +5,7 @@ import cpw.mods.fml.common.eventhandler.SubscribeEvent;
import cpw.mods.fml.relauncher.Side;
import kamkeel.npcs.controllers.SyncController;
import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.PacketUtil;
import kamkeel.npcs.network.enums.EnumSoundOperation;
import kamkeel.npcs.network.enums.EnumSyncAction;
import kamkeel.npcs.network.enums.EnumSyncType;
@@ -110,8 +111,8 @@ public class ServerEventsHandler {
return;
NoppesUtilServer.setEditingNpc(event.entityPlayer, (EntityNPCInterface)event.target);
event.setCanceled(true);
- Server.sendData((EntityPlayerMP)event.entityPlayer, EnumPacketClient.GUI, EnumGuiType.Script.ordinal());
- if(ConfigDebug.PlayerLogging && FMLCommonHandler.instance().getEffectiveSide() == Side.SERVER){
+ PacketUtil.openGUI((EntityPlayerMP)event.entityPlayer, EnumGuiType.Script, 0, 0, 0);
+ if(ConfigDebug.PlayerLogging && FMLCommonHandler.instance().getEffectiveSide() == Side.SERVER){
LogWriter.script(String.format("[%s] (Player) %s OPEN NPC %s (%s, %s, %s) [%s]", "SCRIPTER", event.entityPlayer.getCommandSenderName(), ((EntityNPCInterface)(event.target)).display.getName(), (int)(event.target).posX, (int)(event.target).posY, (int)(event.target).posZ, (event.target).worldObj.getWorldInfo().getWorldName()));
}
}
diff --git a/src/main/java/noppes/npcs/blocks/BlockMailbox.java b/src/main/java/noppes/npcs/blocks/BlockMailbox.java
index 062aec591..50ba865e9 100644
--- a/src/main/java/noppes/npcs/blocks/BlockMailbox.java
+++ b/src/main/java/noppes/npcs/blocks/BlockMailbox.java
@@ -2,6 +2,8 @@ package noppes.npcs.blocks;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.PacketUtil;
import net.minecraft.block.BlockContainer;
import net.minecraft.block.material.Material;
import net.minecraft.client.renderer.texture.IIconRegister;
@@ -25,29 +27,29 @@ import java.util.ArrayList;
import java.util.List;
public class BlockMailbox extends BlockContainer{
-
+
public int renderId = -1;
public BlockMailbox() {
super(Material.iron);
}
- @Override
+ @Override
public void getSubBlocks(Item par1, CreativeTabs par2CreativeTabs, List par3List)
{
par3List.add(new ItemStack(par1, 1, 0));
par3List.add(new ItemStack(par1, 1, 1));
}
-
- @Override
+
+ @Override
public boolean onBlockActivated(World par1World, int i, int j, int k, EntityPlayer player, int par6, float par7, float par8, float par9){
if(!par1World.isRemote){
- Server.sendData((EntityPlayerMP)player, EnumPacketClient.GUI, EnumGuiType.PlayerMailbox, i, j, k);
+ PacketUtil.openGUI((EntityPlayerMP)player, EnumGuiType.PlayerMailbox, i, j, k);
}
return true;
}
- @Override
+ @Override
public ArrayList getDrops(World world, int x, int y, int z, int metadata, int fortune)
{
ArrayList ret = new ArrayList();
@@ -56,40 +58,40 @@ public class BlockMailbox extends BlockContainer{
return ret;
}
- @Override
+ @Override
public int damageDropped(int par1)
{
return par1 >> 2;
}
- @Override
+ @Override
public void onBlockPlacedBy(World par1World, int par2, int par3, int par4, EntityLivingBase par5EntityLivingBase, ItemStack par6ItemStack)
{
int l = MathHelper.floor_double((double)(par5EntityLivingBase.rotationYaw * 4.0F / 360.0F) + 0.5D) & 3;
l %= 4;
-
+
par1World.setBlockMetadataWithNotify(par2, par3, par4, l | par6ItemStack.getItemDamage() << 2, 2);
}
- @Override
+ @Override
public boolean isOpaqueCube(){
return false;
}
- @Override
+ @Override
public boolean renderAsNormalBlock(){
return false;
}
- @Override
+ @Override
public int getRenderType(){
- return renderId;
+ return renderId;
}
@Override
@SideOnly(Side.CLIENT)
public void registerBlockIcons(IIconRegister par1IconRegister)
{
-
+
}
@SideOnly(Side.CLIENT)
public IIcon getIcon(int p_149691_1_, int p_149691_2_)
diff --git a/src/main/java/noppes/npcs/client/PacketHandlerClient.java b/src/main/java/noppes/npcs/client/PacketHandlerClient.java
index 169e7613a..5ec05b4af 100644
--- a/src/main/java/noppes/npcs/client/PacketHandlerClient.java
+++ b/src/main/java/noppes/npcs/client/PacketHandlerClient.java
@@ -48,37 +48,6 @@ public class PacketHandlerClient extends PacketHandlerServer{
MarkData data = MarkData.get((EntityNPCInterface) entity);
data.setNBT(Server.readNBT(buffer));
}
- else if(type == EnumPacketClient.QUEST_COMPLETION){
- NoppesUtil.guiQuestCompletion(player, Server.readNBT(buffer));
- }
- else if(type == EnumPacketClient.UPDATE_NPC){
- NBTTagCompound compound = Server.readNBT(buffer);
- Entity entity = Minecraft.getMinecraft().theWorld.getEntityByID(compound.getInteger("EntityId"));
- if(entity == null || !(entity instanceof EntityNPCInterface))
- return;
- ((EntityNPCInterface)entity).readSpawnData(compound);
- }
- else if(type == EnumPacketClient.ROLE){
- NBTTagCompound compound = Server.readNBT(buffer);
- Entity entity = Minecraft.getMinecraft().theWorld.getEntityByID(compound.getInteger("EntityId"));
- if(entity == null || !(entity instanceof EntityNPCInterface))
- return;
- ((EntityNPCInterface)entity).advanced.setRole(compound.getInteger("Role"));
- ((EntityNPCInterface)entity).roleInterface.readFromNBT(compound);
- NoppesUtil.setLastNpc((EntityNPCInterface) entity);
- }
- else if(type == EnumPacketClient.GUI){
- EnumGuiType gui = EnumGuiType.values()[buffer.readInt()];
- CustomNpcs.proxy.openGui(NoppesUtil.getLastNpc(), gui, buffer.readInt(), buffer.readInt(), buffer.readInt());
- }
- else if(type == EnumPacketClient.SCROLL_SELECTED){
- GuiScreen gui = Minecraft.getMinecraft().currentScreen;
- if(gui == null || !(gui instanceof IScrollData))
- return;
- String selected = Server.readString(buffer);
-
- ((IScrollData)gui).setSelected(selected);
- }
else if(type == EnumPacketClient.GUI_REDSTONE){
NoppesUtil.saveRedstoneBlock(player, Server.readNBT(buffer));
}
diff --git a/src/main/java/noppes/npcs/constants/EnumPacketClient.java b/src/main/java/noppes/npcs/constants/EnumPacketClient.java
index b7f749e20..cec4a7eb3 100644
--- a/src/main/java/noppes/npcs/constants/EnumPacketClient.java
+++ b/src/main/java/noppes/npcs/constants/EnumPacketClient.java
@@ -2,11 +2,6 @@ package
noppes.npcs.constants;
public enum EnumPacketClient {
- QUEST_COMPLETION,
- UPDATE_NPC,
- ROLE,
- GUI,
- SCROLL_SELECTED,
GUI_REDSTONE,
GUI_WAYPOINT,
GUI_DATA,
diff --git a/src/main/java/noppes/npcs/controllers/data/Quest.java b/src/main/java/noppes/npcs/controllers/data/Quest.java
index d780ee053..73e34bbe8 100644
--- a/src/main/java/noppes/npcs/controllers/data/Quest.java
+++ b/src/main/java/noppes/npcs/controllers/data/Quest.java
@@ -1,5 +1,6 @@
package noppes.npcs.controllers.data;
+import kamkeel.npcs.network.PacketUtil;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.nbt.NBTTagCompound;
@@ -139,7 +140,7 @@ public class Quest implements ICompatibilty, IQuest {
public boolean instantComplete(EntityPlayer player, QuestData data) {
if(completion == EnumQuestCompletion.Instant && NoppesUtilPlayer.questCompletion((EntityPlayerMP) player, data.quest.id)){
- Server.sendData((EntityPlayerMP)player, EnumPacketClient.QUEST_COMPLETION, data.quest.writeToNBT(new NBTTagCompound()));
+ PacketUtil.sendQuestComplete((EntityPlayerMP)player, data.quest.writeToNBT(new NBTTagCompound()));
return true;
}
return false;
diff --git a/src/main/java/noppes/npcs/entity/EntityNPCInterface.java b/src/main/java/noppes/npcs/entity/EntityNPCInterface.java
index ba49853bd..88c43470f 100644
--- a/src/main/java/noppes/npcs/entity/EntityNPCInterface.java
+++ b/src/main/java/noppes/npcs/entity/EntityNPCInterface.java
@@ -8,9 +8,11 @@ import io.netty.buffer.ByteBuf;
import kamkeel.npcs.addon.DBCAddon;
import kamkeel.npcs.addon.client.DBCClient;
import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.PacketUtil;
import kamkeel.npcs.network.enums.EnumSoundOperation;
import kamkeel.npcs.network.packets.client.ChatBubblePacket;
import kamkeel.npcs.network.packets.client.SoundManagementPacket;
+import kamkeel.npcs.network.packets.client.npc.UpdateNpcPacket;
import net.minecraft.block.Block;
import net.minecraft.block.material.Material;
import net.minecraft.client.Minecraft;
@@ -411,8 +413,8 @@ public abstract class EntityNPCInterface extends EntityCreature implements IEnti
public void updateClient() {
NBTTagCompound compound = writeSpawnData();
compound.setInteger("EntityId", getEntityId());
- Server.sendAssociatedData(this, EnumPacketClient.UPDATE_NPC, compound);
- updateClient = false;
+ PacketHandler.Instance.sendTracking(new UpdateNpcPacket(compound), this);
+ updateClient = false;
}
@Override
@@ -452,7 +454,7 @@ public abstract class EntityNPCInterface extends EntityCreature implements IEnti
}
else if (data != null){
NoppesUtilPlayer.questCompletion((EntityPlayerMP) player, data.quest.id);
- Server.sendData((EntityPlayerMP)player, EnumPacketClient.QUEST_COMPLETION, data.quest.writeToNBT(new NBTTagCompound()));
+ PacketUtil.sendQuestComplete((EntityPlayerMP)player, data.quest.writeToNBT(new NBTTagCompound()));
}
else if (dialog != null){
NoppesUtilServer.openDialog(player, this, dialog, 0);
From a1f10db0de570a296aad82aee862385c67d210f3 Mon Sep 17 00:00:00 2001
From: Kam
Date: Thu, 30 Jan 2025 12:16:11 -0500
Subject: [PATCH 032/357] Continue to replace Client Packet Handler with
PacketHandler
---
...BookPacket.java => GuiOpenBookPacket.java} | 31 +++++--
.../packets/client/gui/GuiOpenPacket.java | 2 +-
.../packets/client/gui/GuiRedstonePacket.java | 11 ++-
.../client/gui/GuiTeleporterPacket.java | 2 +-
.../packets/client/gui/GuiWaypointPacket.java | 11 ++-
.../LargeClonerPacket.java} | 35 +++++---
.../client/large/LargeGuiDataPacket.java | 2 +-
.../java/noppes/npcs/NoppesUtilPlayer.java | 2 +-
.../java/noppes/npcs/PacketHandlerPlayer.java | 13 +--
.../java/noppes/npcs/PacketHandlerServer.java | 88 +++++++++----------
.../java/noppes/npcs/ServerEventsHandler.java | 7 +-
.../noppes/npcs/blocks/BlockNpcRedstone.java | 6 +-
.../noppes/npcs/blocks/BlockWaypoint.java | 4 +-
.../npcs/client/PacketHandlerClient.java | 36 --------
.../npcs/constants/EnumPacketClient.java | 7 --
.../npcs/controllers/CustomGuiController.java | 5 +-
.../npcs/controllers/data/BankData.java | 4 +-
.../npcs/controllers/data/DataTransform.java | 48 +++++-----
18 files changed, 160 insertions(+), 154 deletions(-)
rename src/main/java/kamkeel/npcs/network/packets/client/gui/{OpenBookPacket.java => GuiOpenBookPacket.java} (61%)
rename src/main/java/kamkeel/npcs/network/packets/client/{gui/GuiClonerPacket.java => large/LargeClonerPacket.java} (55%)
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/gui/OpenBookPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiOpenBookPacket.java
similarity index 61%
rename from src/main/java/kamkeel/npcs/network/packets/client/gui/OpenBookPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/gui/GuiOpenBookPacket.java
index b8848ba1b..9f3ef0a92 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/gui/OpenBookPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiOpenBookPacket.java
@@ -7,24 +7,35 @@ import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.enums.EnumClientPacket;
+import kamkeel.npcs.util.ByteBufUtils;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
-import noppes.npcs.CustomNpcs;
-import noppes.npcs.Server;
import noppes.npcs.client.gui.player.GuiBook;
import noppes.npcs.client.NoppesUtil;
import java.io.IOException;
-public final class OpenBookPacket extends AbstractPacket {
- public static final String packetName = "Client|OpenBook";
+public final class GuiOpenBookPacket extends AbstractPacket {
+ public static final String packetName = "Client|GuiOpenBook";
- public OpenBookPacket() {}
+ private int i;
+ private int j;
+ private int k;
+ private NBTTagCompound nbtTagCompound;
+
+ public GuiOpenBookPacket() {}
+
+ public GuiOpenBookPacket(int i, int j, int k, NBTTagCompound nbtTagCompound) {
+ this.i = i;
+ this.j = j;
+ this.k = k;
+ this.nbtTagCompound = nbtTagCompound;
+ }
@Override
public Enum getType() {
- return EnumClientPacket.OPEN_BOOK;
+ return EnumClientPacket.GUI_BOOK;
}
@Override
@@ -34,7 +45,11 @@ public final class OpenBookPacket extends AbstractPacket {
@Override
public void sendData(ByteBuf out) throws IOException {
- // TODO: Send Packet
+ out.writeInt(this.i);
+ out.writeInt(this.j);
+ out.writeInt(this.k);
+
+ ByteBufUtils.writeNBT(out, this.nbtTagCompound);
}
@SideOnly(Side.CLIENT)
@@ -43,7 +58,7 @@ public final class OpenBookPacket extends AbstractPacket {
int x = in.readInt();
int y = in.readInt();
int z = in.readInt();
- NBTTagCompound nbt = Server.readNBT(in);
+ NBTTagCompound nbt = ByteBufUtils.readNBT(in);
ItemStack book = ItemStack.loadItemStackFromNBT(nbt);
NoppesUtil.openGUI(player, new GuiBook(player, book, x, y, z));
}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiOpenPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiOpenPacket.java
index d85ac885e..105bb08f8 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiOpenPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiOpenPacket.java
@@ -32,7 +32,7 @@ public final class GuiOpenPacket extends AbstractPacket {
@Override
public Enum getType() {
- return EnumClientPacket.GUI;
+ return EnumClientPacket.GUI_OPEN;
}
@Override
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiRedstonePacket.java b/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiRedstonePacket.java
index 1284d70e2..c67ca326b 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiRedstonePacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiRedstonePacket.java
@@ -7,6 +7,7 @@ import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.enums.EnumClientPacket;
+import kamkeel.npcs.util.ByteBufUtils;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.nbt.NBTTagCompound;
import noppes.npcs.CustomNpcs;
@@ -18,8 +19,14 @@ import java.io.IOException;
public final class GuiRedstonePacket extends AbstractPacket {
public static final String packetName = "Client|GuiRedstone";
+ private NBTTagCompound compound;
+
public GuiRedstonePacket() {}
+ public GuiRedstonePacket(NBTTagCompound compound) {
+ this.compound = compound;
+ }
+
@Override
public Enum getType() {
return EnumClientPacket.GUI_REDSTONE;
@@ -32,13 +39,13 @@ public final class GuiRedstonePacket extends AbstractPacket {
@Override
public void sendData(ByteBuf out) throws IOException {
- // TODO: Send Packet
+ ByteBufUtils.writeNBT(out, this.compound);
}
@SideOnly(Side.CLIENT)
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- NBTTagCompound nbt = Server.readNBT(in);
+ NBTTagCompound nbt = ByteBufUtils.readNBT(in);
NoppesUtil.saveRedstoneBlock(player, nbt);
}
}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiTeleporterPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiTeleporterPacket.java
index c42bc8a89..734c60002 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiTeleporterPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiTeleporterPacket.java
@@ -21,7 +21,7 @@ public final class GuiTeleporterPacket extends AbstractPacket {
@Override
public Enum getType() {
- return EnumClientPacket.TELEPORTER;
+ return EnumClientPacket.GUI_TELEPORTER;
}
@Override
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiWaypointPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiWaypointPacket.java
index e449e7b18..55408fc0d 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiWaypointPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiWaypointPacket.java
@@ -7,6 +7,7 @@ import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.PacketChannel;
import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.enums.EnumClientPacket;
+import kamkeel.npcs.util.ByteBufUtils;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.nbt.NBTTagCompound;
import noppes.npcs.CustomNpcs;
@@ -18,8 +19,14 @@ import java.io.IOException;
public final class GuiWaypointPacket extends AbstractPacket {
public static final String packetName = "Client|GuiWaypoint";
+ private NBTTagCompound compound;
+
public GuiWaypointPacket() {}
+ public GuiWaypointPacket(NBTTagCompound compound) {
+ this.compound = compound;
+ }
+
@Override
public Enum getType() {
return EnumClientPacket.GUI_WAYPOINT;
@@ -32,13 +39,13 @@ public final class GuiWaypointPacket extends AbstractPacket {
@Override
public void sendData(ByteBuf out) throws IOException {
- // TODO: Send Packet
+ ByteBufUtils.writeNBT(out, this.compound);
}
@SideOnly(Side.CLIENT)
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
- NBTTagCompound nbt = Server.readNBT(in);
+ NBTTagCompound nbt = ByteBufUtils.readNBT(in);
NoppesUtil.saveWayPointBlock(player, nbt);
}
}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiClonerPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/large/LargeClonerPacket.java
similarity index 55%
rename from src/main/java/kamkeel/npcs/network/packets/client/gui/GuiClonerPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/client/large/LargeClonerPacket.java
index 486a6e128..5ad8d3857 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiClonerPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/large/LargeClonerPacket.java
@@ -1,35 +1,35 @@
-package kamkeel.npcs.network.packets.client.gui;
+package kamkeel.npcs.network.packets.client.large;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import io.netty.buffer.ByteBuf;
-import kamkeel.npcs.network.AbstractPacket;
+import io.netty.buffer.Unpooled;
+import kamkeel.npcs.network.LargeAbstractPacket;
import kamkeel.npcs.network.PacketChannel;
import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.enums.EnumClientPacket;
import kamkeel.npcs.util.ByteBufUtils;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.nbt.NBTTagCompound;
-import noppes.npcs.CustomNpcs;
import noppes.npcs.client.NoppesUtil;
import noppes.npcs.client.gui.GuiNpcMobSpawnerAdd;
import java.io.IOException;
-public final class GuiClonerPacket extends AbstractPacket {
+public final class LargeClonerPacket extends LargeAbstractPacket {
public static final String packetName = "Client|Clone";
private NBTTagCompound compound;
- public GuiClonerPacket() {}
+ public LargeClonerPacket() {}
- public GuiClonerPacket(NBTTagCompound comp){
+ public LargeClonerPacket(NBTTagCompound comp){
this.compound = comp;
}
@Override
public Enum getType() {
- return EnumClientPacket.CLONE;
+ return EnumClientPacket.CLONE_NPC;
}
@Override
@@ -37,15 +37,26 @@ public final class GuiClonerPacket extends AbstractPacket {
return PacketHandler.CLIENT_PACKET;
}
- @Override
- public void sendData(ByteBuf out) throws IOException {
- ByteBufUtils.writeNBT(out, compound);
- }
-
@SideOnly(Side.CLIENT)
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
NBTTagCompound nbt = ByteBufUtils.readNBT(in);
NoppesUtil.openGUI(player, new GuiNpcMobSpawnerAdd(nbt));
}
+
+ @Override
+ protected byte[] getData() throws IOException {
+ ByteBuf buffer = Unpooled.buffer();
+ ByteBufUtils.writeBigNBT(buffer, compound);
+ byte[] bytes = new byte[buffer.readableBytes()];
+ buffer.readBytes(bytes);
+ return bytes;
+ }
+
+ @SideOnly(Side.CLIENT)
+ @Override
+ protected void handleCompleteData(ByteBuf data, EntityPlayer player) throws IOException {
+ NBTTagCompound nbt = ByteBufUtils.readBigNBT(data);
+ NoppesUtil.openGUI(player, new GuiNpcMobSpawnerAdd(nbt));
+ }
}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/large/LargeGuiDataPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/large/LargeGuiDataPacket.java
index 8bf57d986..a370f3a2e 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/large/LargeGuiDataPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/large/LargeGuiDataPacket.java
@@ -39,7 +39,7 @@ public final class LargeGuiDataPacket extends LargeAbstractPacket {
@Override
public PacketChannel getChannel() {
- return PacketHandler.LARGE_PACKET;
+ return PacketHandler.CLIENT_PACKET;
}
@Override
diff --git a/src/main/java/noppes/npcs/NoppesUtilPlayer.java b/src/main/java/noppes/npcs/NoppesUtilPlayer.java
index cfdd0f1c6..46fe77a0a 100644
--- a/src/main/java/noppes/npcs/NoppesUtilPlayer.java
+++ b/src/main/java/noppes/npcs/NoppesUtilPlayer.java
@@ -422,7 +422,7 @@ public class NoppesUtilPlayer {
}
QuestLogData data = new QuestLogData();
data.setData(player);
- Server.sendData(player, EnumPacketClient.GUI_DATA, data.writeNBT());
+ PacketUtil.sendGuiData(player, data.writeNBT());
}
public static void sendTrackedQuest(EntityPlayerMP player) {
diff --git a/src/main/java/noppes/npcs/PacketHandlerPlayer.java b/src/main/java/noppes/npcs/PacketHandlerPlayer.java
index 7d57b2184..ae44217e8 100644
--- a/src/main/java/noppes/npcs/PacketHandlerPlayer.java
+++ b/src/main/java/noppes/npcs/PacketHandlerPlayer.java
@@ -3,6 +3,7 @@ package noppes.npcs;
import cpw.mods.fml.common.eventhandler.SubscribeEvent;
import cpw.mods.fml.common.network.FMLNetworkEvent.ServerCustomPacketEvent;
import io.netty.buffer.ByteBuf;
+import kamkeel.npcs.network.PacketUtil;
import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.init.Items;
@@ -147,20 +148,20 @@ public class PacketHandlerPlayer{
if(npc == null || npc.advanced.role != EnumRoleType.Follower)
return;
NoppesUtilPlayer.extendFollower(player, npc);
- Server.sendData(player, EnumPacketClient.GUI_DATA, npc.roleInterface.writeToNBT(new NBTTagCompound()));
+ PacketUtil.sendGuiData(player, npc.roleInterface.writeToNBT(new NBTTagCompound()));
}
else if(type == EnumPlayerPacket.FollowerState){
EntityNPCInterface npc = NoppesUtilServer.getEditingNpc(player);
if(npc == null || npc.advanced.role != EnumRoleType.Follower)
return;
NoppesUtilPlayer.changeFollowerState(player,npc);
- Server.sendData(player, EnumPacketClient.GUI_DATA, npc.roleInterface.writeToNBT(new NBTTagCompound()));
+ PacketUtil.sendGuiData(player, npc.roleInterface.writeToNBT(new NBTTagCompound()));
}
else if(type == EnumPlayerPacket.RoleGet){
EntityNPCInterface npc = NoppesUtilServer.getEditingNpc(player);
if(npc == null || npc.advanced.role == EnumRoleType.None)
return;
- Server.sendData(player, EnumPacketClient.GUI_DATA, npc.roleInterface.writeToNBT(new NBTTagCompound()));
+ PacketUtil.sendGuiData(player, npc.roleInterface.writeToNBT(new NBTTagCompound()));
}
else if(type == EnumPlayerPacket.Transport){
EntityNPCInterface npc = NoppesUtilServer.getEditingNpc(player);
@@ -212,11 +213,11 @@ public class PacketHandlerPlayer{
}
else if(type == EnumPlayerPacket.FactionsGet){
PlayerFactionData data = PlayerDataController.Instance.getPlayerData(player).factionData;
- Server.sendData(player, EnumPacketClient.GUI_DATA, data.getPlayerGuiData());
+ PacketUtil.sendGuiData(player, data.getPlayerGuiData());
}
else if(type == EnumPlayerPacket.MailGet){
PlayerMailData data = PlayerDataController.Instance.getPlayerData(player).mailData;
- Server.sendData(player, EnumPacketClient.GUI_DATA, data.saveNBTData(new NBTTagCompound()));
+ PacketUtil.sendGuiData(player, data.saveNBTData(new NBTTagCompound()));
}
else if(type == EnumPlayerPacket.MailDelete){
long time = buffer.readLong();
@@ -230,7 +231,7 @@ public class PacketHandlerPlayer{
it.remove();
}
}
- Server.sendData(player, EnumPacketClient.GUI_DATA, data.saveNBTData(new NBTTagCompound()));
+ PacketUtil.sendGuiData(player, data.saveNBTData(new NBTTagCompound()));
}
else if(type == EnumPlayerPacket.MailSend){
if(!(player.openContainer instanceof ContainerMail))
diff --git a/src/main/java/noppes/npcs/PacketHandlerServer.java b/src/main/java/noppes/npcs/PacketHandlerServer.java
index 8f7267409..8151c2149 100644
--- a/src/main/java/noppes/npcs/PacketHandlerServer.java
+++ b/src/main/java/noppes/npcs/PacketHandlerServer.java
@@ -116,7 +116,7 @@ public class PacketHandlerServer{
}
}
compound.setTag("TagNames",tagList);
- Server.sendData(player, EnumPacketClient.GUI_DATA, compound);
+ PacketUtil.sendGuiData(player, compound);
} else if (type == EnumPacketServer.CacheAnimation) {
PlayerDataController.Instance.getPlayerData(player).animationData.cacheAnimation(buffer.readInt());
return;
@@ -372,7 +372,7 @@ public class PacketHandlerServer{
compound.setBoolean("PlayerScriptsEnabled", ConfigScript.GlobalPlayerScripts);
compound.setBoolean("GlobalNPCScriptsEnabled", ConfigScript.GlobalNPCScripts);
compound.setBoolean("ForgeScriptsEnabled", ConfigScript.GlobalForgeScripts);
- Server.sendData(player, EnumPacketClient.GUI_DATA, compound);
+ PacketUtil.sendGuiData(player, compound);
}
else if (type == EnumPacketServer.ScriptGlobalGuiDataSave) {
NBTTagCompound compound = Server.readNBT(buffer);
@@ -395,7 +395,7 @@ public class PacketHandlerServer{
else if(type == EnumPacketServer.ScriptDataGet){
NBTTagCompound compound = npc.script.writeToNBT(new NBTTagCompound());
compound.setTag("Languages", ScriptController.Instance.nbtLanguages());
- Server.sendData(player, EnumPacketClient.GUI_DATA, compound);
+ PacketUtil.sendGuiData(player, compound);
}
}
@@ -405,7 +405,7 @@ public class PacketHandlerServer{
compound.setString("ScriptLanguage", data.getLanguage());
compound.setTag("Languages", ScriptController.Instance.nbtLanguages());
compound.setTag("ScriptConsole", NBTTags.NBTLongStringMap(data.getConsoleText()));
- Server.sendData(player, EnumPacketClient.GUI_DATA, compound);
+ PacketUtil.sendGuiData(player, compound);
List containers = data.getScripts();
for (int i = 0; i < containers.size(); i++) {
ScriptContainer container = containers.get(i);
@@ -413,7 +413,7 @@ public class PacketHandlerServer{
tabCompound.setInteger("Tab",i);
tabCompound.setTag("Script",container.writeToNBT(new NBTTagCompound()));
tabCompound.setInteger("TotalScripts",containers.size());
- Server.sendData(player, EnumPacketClient.GUI_DATA, tabCompound);
+ PacketUtil.sendGuiData(player, tabCompound);
}
}
@@ -507,7 +507,7 @@ public class PacketHandlerServer{
iw.loadScriptData();
NBTTagCompound compound = iw.getMCNbt();
compound.setTag("Languages", ScriptController.Instance.nbtLanguages());
- Server.sendData(player, EnumPacketClient.GUI_DATA, new Object[]{compound});
+ PacketUtil.sendGuiData(player, compound);
} else if (type == EnumPacketServer.ScriptItemDataSave) {
if (!player.capabilities.isCreativeMode) {
return;
@@ -530,7 +530,7 @@ public class PacketHandlerServer{
return;
NBTTagCompound compound = ((TileScripted) tile).getNBT(new NBTTagCompound());
compound.setTag("Languages", ScriptController.Instance.nbtLanguages());
- Server.sendData(player, EnumPacketClient.GUI_DATA, compound);
+ PacketUtil.sendGuiData(player, compound);
} else if (type == EnumPacketServer.ScriptBlockDataSave) {
if (!player.capabilities.isCreativeMode) {
return;
@@ -567,7 +567,7 @@ public class PacketHandlerServer{
private void movingPackets(EnumPacketServer type, ByteBuf buffer, EntityPlayerMP player, EntityNPCInterface npc) throws IOException {
if(type == EnumPacketServer.MovingPathGet){
- Server.sendData(player, EnumPacketClient.GUI_DATA, npc.ai.writeToNBT(new NBTTagCompound()));
+ PacketUtil.sendGuiData(player, npc.ai.writeToNBT(new NBTTagCompound()));
}
else if(type == EnumPacketServer.MovingPathSave){
npc.ai.setMovingPath(NBTTags.getIntegerArraySet(Server.readNBT(buffer).getTagList("MovingPathNew",10)));
@@ -582,7 +582,7 @@ public class PacketHandlerServer{
TileEntity tile = player.worldObj.getTileEntity(buffer.readInt(), buffer.readInt(), buffer.readInt());
NBTTagCompound compound = new NBTTagCompound();
tile.writeToNBT(compound);
- Server.sendData(player, EnumPacketClient.GUI_DATA, compound);
+ PacketUtil.sendGuiData(player, compound);
}
else if(type == EnumPacketServer.DialogCategoriesGet){
PacketUtil.sendScrollData(player, DialogController.Instance.getScroll());
@@ -632,7 +632,7 @@ public class PacketHandlerServer{
Quest quest = QuestController.Instance.quests.get(dialog.quest);
if(quest != null)
compound.setString("DialogQuestName", quest.title);
- Server.sendData(player, EnumPacketClient.GUI_DATA, compound);
+ PacketUtil.sendGuiData(player, compound);
}
}
else if(type == EnumPacketServer.QuestGet){
@@ -641,20 +641,20 @@ public class PacketHandlerServer{
NBTTagCompound compound = new NBTTagCompound();
if(quest.hasNewQuest())
compound.setString("NextQuestTitle", quest.getNextQuest().title);
- Server.sendData(player, EnumPacketClient.GUI_DATA, quest.writeToNBT(compound));
+ PacketUtil.sendGuiData(player, quest.writeToNBT(compound));
}
}
else if(type == EnumPacketServer.FactionGet){
NBTTagCompound compound = new NBTTagCompound();
Faction faction = FactionController.getInstance().get(buffer.readInt());
faction.writeNBT(compound);
- Server.sendData(player, EnumPacketClient.GUI_DATA, compound);
+ PacketUtil.sendGuiData(player, compound);
}
else if(type == EnumPacketServer.TagGet){
NBTTagCompound compound = new NBTTagCompound();
Tag tag = TagController.getInstance().get(buffer.readInt());
tag.writeNBT(compound);
- Server.sendData(player, EnumPacketClient.GUI_DATA, compound);
+ PacketUtil.sendGuiData(player, compound);
}
}
@@ -803,7 +803,7 @@ public class PacketHandlerServer{
else if(type == EnumPacketServer.NaturalSpawnGet){
SpawnData spawn = SpawnController.Instance.getSpawnData(buffer.readInt());
if(spawn != null){
- Server.sendData(player, EnumPacketClient.GUI_DATA, spawn.writeNBT(new NBTTagCompound()));
+ PacketUtil.sendGuiData(player, spawn.writeNBT(new NBTTagCompound()));
}
}
else if(type == EnumPacketServer.NaturalSpawnSave){
@@ -832,7 +832,7 @@ public class PacketHandlerServer{
if(category != null){
NBTTagCompound comp = category.writeNBT(new NBTTagCompound());
comp.removeTag("Dialogs");
- Server.sendData(player, EnumPacketClient.GUI_DATA, comp);
+ PacketUtil.sendGuiData(player, comp);
}
}
else if(type == EnumPacketServer.DialogSave){
@@ -881,7 +881,7 @@ public class PacketHandlerServer{
if(option != null && option.hasDialog()){
NBTTagCompound compound = option.writeNBT();
compound.setInteger("Position", slot);
- Server.sendData(player, EnumPacketClient.GUI_DATA, compound);
+ PacketUtil.sendGuiData(player, compound);
}
}
else if(type == EnumPacketServer.DialogNpcRemove){
@@ -892,7 +892,7 @@ public class PacketHandlerServer{
if(category != null){
NBTTagCompound comp = category.writeNBT(new NBTTagCompound());
comp.removeTag("Dialogs");
- Server.sendData(player, EnumPacketClient.GUI_DATA, comp);
+ PacketUtil.sendGuiData(player, comp);
}
}
else if(type == EnumPacketServer.QuestCategorySave){
@@ -931,7 +931,7 @@ public class PacketHandlerServer{
compound.setString("2", quest2.title);
if(quest3 != null)
compound.setString("3", quest3.title);
- Server.sendData(player, EnumPacketClient.GUI_DATA, compound);
+ PacketUtil.sendGuiData(player, compound);
}
else if(type == EnumPacketServer.QuestRemove){
Quest quest = QuestController.Instance.quests.get(buffer.readInt());
@@ -980,7 +980,7 @@ public class PacketHandlerServer{
return;
RoleTransporter role = (RoleTransporter) npc.roleInterface;
if(role.hasTransport()){
- Server.sendData(player,EnumPacketClient.GUI_DATA,role.getLocation().writeNBT());
+ PacketUtil.sendGuiData(player, role.getLocation().writeNBT());
PacketUtil.setSelectedList(player, role.getLocation().category.title);
}
}
@@ -994,14 +994,14 @@ public class PacketHandlerServer{
NoppesUtilServer.sendFactionDataAll(player);
NBTTagCompound compound = new NBTTagCompound();
faction.writeNBT(compound);
- Server.sendData(player, EnumPacketClient.GUI_DATA, compound);
+ PacketUtil.sendGuiData(player, compound);
}
else if(type == EnumPacketServer.FactionRemove){
FactionController.getInstance().delete(buffer.readInt());
NoppesUtilServer.sendFactionDataAll(player);
NBTTagCompound compound = new NBTTagCompound();
(new Faction()).writeNBT(compound);
- Server.sendData(player, EnumPacketClient.GUI_DATA, compound);
+ PacketUtil.sendGuiData(player, compound);
}
else if(type == EnumPacketServer.TagSet){
this.setTags(npc,buffer);
@@ -1013,14 +1013,14 @@ public class PacketHandlerServer{
NoppesUtilServer.sendTagDataAll(player);
NBTTagCompound compound = new NBTTagCompound();
tag.writeNBT(compound);
- Server.sendData(player, EnumPacketClient.GUI_DATA, compound);
+ PacketUtil.sendGuiData(player, compound);
}
else if(type == EnumPacketServer.TagRemove){
TagController.getInstance().delete(buffer.readInt());
NoppesUtilServer.sendTagDataAll(player);
NBTTagCompound compound = new NBTTagCompound();
(new Tag()).writeNBT(compound);
- Server.sendData(player, EnumPacketClient.GUI_DATA, compound);
+ PacketUtil.sendGuiData(player, compound);
}
else if(type == EnumPacketServer.PlayerDataGet){
int id = buffer.readInt();
@@ -1039,21 +1039,21 @@ public class PacketHandlerServer{
NoppesUtilServer.regenPlayerData(player);
}
else if(type == EnumPacketServer.MainmenuDisplayGet){
- Server.sendData(player, EnumPacketClient.GUI_DATA, npc.display.writeToNBT(new NBTTagCompound()));
+ PacketUtil.sendGuiData(player, npc.display.writeToNBT(new NBTTagCompound()));
}
else if(type == EnumPacketServer.MainmenuDisplaySave){
npc.display.readToNBT(Server.readNBT(buffer));
npc.updateClient = true;
}
else if(type == EnumPacketServer.MainmenuStatsGet){
- Server.sendData(player, EnumPacketClient.GUI_DATA, npc.stats.writeToNBT(new NBTTagCompound()));
+ PacketUtil.sendGuiData(player, npc.stats.writeToNBT(new NBTTagCompound()));
}
else if(type == EnumPacketServer.MainmenuStatsSave){
npc.stats.readToNBT(Server.readNBT(buffer));
npc.updateClient = true;
}
else if(type == EnumPacketServer.MainmenuInvGet){
- Server.sendData(player, EnumPacketClient.GUI_DATA, npc.inventory.writeEntityToNBT(new NBTTagCompound()));
+ PacketUtil.sendGuiData(player, npc.inventory.writeEntityToNBT(new NBTTagCompound()));
}
else if(type == EnumPacketServer.MainmenuInvSave){
npc.inventory.readEntityFromNBT(Server.readNBT(buffer));
@@ -1061,7 +1061,7 @@ public class PacketHandlerServer{
npc.updateClient = true;
}
else if(type == EnumPacketServer.MainmenuAIGet){
- Server.sendData(player, EnumPacketClient.GUI_DATA, npc.ai.writeToNBT(new NBTTagCompound()));
+ PacketUtil.sendGuiData(player, npc.ai.writeToNBT(new NBTTagCompound()));
}
else if(type == EnumPacketServer.MainmenuAISave){
npc.ai.readToNBT(Server.readNBT(buffer));
@@ -1070,7 +1070,7 @@ public class PacketHandlerServer{
npc.updateClient = true;
}
else if(type == EnumPacketServer.MainmenuAdvancedGet){
- Server.sendData(player, EnumPacketClient.GUI_DATA, npc.advanced.writeToNBT(new NBTTagCompound()));
+ PacketUtil.sendGuiData(player, npc.advanced.writeToNBT(new NBTTagCompound()));
}
else if(type == EnumPacketServer.MainmenuAdvancedSave){
npc.advanced.readToNBT(Server.readNBT(buffer));
@@ -1101,10 +1101,10 @@ public class PacketHandlerServer{
if(npc.advanced.job == EnumJobType.Spawner)
((JobSpawner)npc.jobInterface).cleanCompound(compound);
- Server.sendData(player, EnumPacketClient.GUI_DATA, compound);
+ PacketUtil.sendGuiData(player, compound);
if(npc.advanced.job == EnumJobType.Spawner)
- Server.sendData(player, EnumPacketClient.GUI_DATA, ((JobSpawner)npc.jobInterface).getTitles());
+ PacketUtil.sendGuiData(player, ((JobSpawner)npc.jobInterface).getTitles());
}
else if(type == EnumPacketServer.JobSpawnerAdd){
if(npc.advanced.job != EnumJobType.Spawner)
@@ -1118,7 +1118,7 @@ public class PacketHandlerServer{
else{
job.setJobCompound(buffer.readInt(), Server.readNBT(buffer));
}
- Server.sendData(player, EnumPacketClient.GUI_DATA, job.getTitles());
+ PacketUtil.sendGuiData(player, job.getTitles());
}
else if(type == EnumPacketServer.RoleCompanionUpdate){
if(npc.advanced.role != EnumRoleType.Companion)
@@ -1131,7 +1131,7 @@ public class PacketHandlerServer{
return;
JobSpawner job = (JobSpawner) npc.jobInterface;
job.setJobCompound(buffer.readInt(), null);
- Server.sendData(player, EnumPacketClient.GUI_DATA, job.getTitles());
+ PacketUtil.sendGuiData(player, job.getTitles());
}
else if(type == EnumPacketServer.RoleSave){
npc.roleInterface.readFromNBT(Server.readNBT(buffer));
@@ -1142,7 +1142,7 @@ public class PacketHandlerServer{
return;
NBTTagCompound compound = new NBTTagCompound();
compound.setBoolean("RoleData", true);
- Server.sendData(player, EnumPacketClient.GUI_DATA, npc.roleInterface.writeToNBT(compound));
+ PacketUtil.sendGuiData(player, npc.roleInterface.writeToNBT(compound));
}
else if(type == EnumPacketServer.MerchantUpdate){
Entity entity = player.worldObj.getEntityByID(buffer.readInt());
@@ -1168,7 +1168,7 @@ public class PacketHandlerServer{
npc.updateAI = true;
}
else if(type == EnumPacketServer.TransformGet){
- Server.sendData(player, EnumPacketClient.GUI_DATA, npc.transform.writeOptions(new NBTTagCompound()));
+ PacketUtil.sendGuiData(player, npc.transform.writeOptions(new NBTTagCompound()));
}
else if(type == EnumPacketServer.TransformLoad){
if(npc.transform.isValid())
@@ -1192,20 +1192,20 @@ public class PacketHandlerServer{
else if(type == EnumPacketServer.AnimationGet){
Animation animation = (Animation) AnimationController.getInstance().get(buffer.readInt());
NBTTagCompound compound = animation.writeToNBT();
- Server.sendData(player, EnumPacketClient.GUI_DATA, compound);
+ PacketUtil.sendGuiData(player, compound);
}
else if(type == EnumPacketServer.AnimationRemove){
AnimationController.getInstance().delete(buffer.readInt());
NoppesUtilServer.sendAnimationDataAll(player);
NBTTagCompound compound = (new Animation()).writeToNBT();
- Server.sendData(player, EnumPacketClient.GUI_DATA, compound);
+ PacketUtil.sendGuiData(player, compound);
}
else if(type == EnumPacketServer.AnimationSave){
Animation animation = new Animation();
animation.readFromNBT(Server.readNBT(buffer));
AnimationController.getInstance().saveAnimation(animation);
NoppesUtilServer.sendAnimationDataAll(player);
- Server.sendData(player, EnumPacketClient.GUI_DATA, animation.writeToNBT());
+ PacketUtil.sendGuiData(player, animation.writeToNBT());
}
else
blockPackets(type, buffer, player);
@@ -1234,7 +1234,7 @@ public class PacketHandlerServer{
compound.setTag("List", list);
compound.setTag("ListDate", listDate);
- Server.sendData(player, EnumPacketClient.GUI_DATA, compound);
+ PacketUtil.sendGuiData(player, compound);
}
else
warn(player,"WE 1 tried todo something with the wrong tool, probably a hacker");
@@ -1290,7 +1290,7 @@ public class PacketHandlerServer{
boolean bo = ServerCloneController.Instance.getCloneData(null, Server.readString(buffer), buffer.readInt()) != null;
NBTTagCompound compound = new NBTTagCompound();
compound.setBoolean("NameExists", bo);
- Server.sendData(player, EnumPacketClient.GUI_DATA, compound);
+ PacketUtil.sendGuiData(player, compound);
}
else if(type == EnumPacketServer.CloneSave){
PlayerData data = PlayerDataController.Instance.getPlayerData(player);
@@ -1322,7 +1322,7 @@ public class PacketHandlerServer{
compound.setTag("List", list);
compound.setTag("ListDate", listDate);
- Server.sendData(player, EnumPacketClient.GUI_DATA, compound);
+ PacketUtil.sendGuiData(player, compound);
}
else if(type == EnumPacketServer.CloneList){
NBTTagList list = new NBTTagList();
@@ -1338,14 +1338,14 @@ public class PacketHandlerServer{
compound.setTag("List", list);
compound.setTag("ListDate", listDate);
- Server.sendData(player, EnumPacketClient.GUI_DATA, compound);
+ PacketUtil.sendGuiData(player, compound);
}
else if (type == EnumPacketServer.CloneTagList) {
int tab = buffer.readInt();
TagMap tagMap = ServerTagMapController.Instance.getTagMap(tab);
NBTTagCompound compound = new NBTTagCompound();
compound.setTag("CloneTags", tagMap.writeNBT());
- Server.sendData(player, EnumPacketClient.GUI_DATA, compound);
+ PacketUtil.sendGuiData(player, compound);
}
else if (type == EnumPacketServer.CloneAllTags) {
NBTTagCompound compound = new NBTTagCompound();
@@ -1357,7 +1357,7 @@ public class PacketHandlerServer{
validTagList.appendTag(tagCompound);
}
compound.setTag("AllTags", validTagList);
- Server.sendData(player, EnumPacketClient.GUI_DATA, compound);
+ PacketUtil.sendGuiData(player, compound);
}
else if (type == EnumPacketServer.CloneAllTagsShort) {
NBTTagCompound compound = new NBTTagCompound();
@@ -1369,7 +1369,7 @@ public class PacketHandlerServer{
validTagList.appendTag(tagCompound);
}
compound.setTag("ShortTags", validTagList);
- Server.sendData(player, EnumPacketClient.GUI_DATA, compound);
+ PacketUtil.sendGuiData(player, compound);
}
else if (type == EnumPacketServer.TagSet) {
EntityNPCInterface npc = NoppesUtilServer.getEditingNpc(player);
diff --git a/src/main/java/noppes/npcs/ServerEventsHandler.java b/src/main/java/noppes/npcs/ServerEventsHandler.java
index ff3eec5b8..364f5f87c 100644
--- a/src/main/java/noppes/npcs/ServerEventsHandler.java
+++ b/src/main/java/noppes/npcs/ServerEventsHandler.java
@@ -10,6 +10,8 @@ import kamkeel.npcs.network.enums.EnumSoundOperation;
import kamkeel.npcs.network.enums.EnumSyncAction;
import kamkeel.npcs.network.enums.EnumSyncType;
import kamkeel.npcs.network.packets.client.SoundManagementPacket;
+import kamkeel.npcs.network.packets.client.VillagerListPacket;
+import kamkeel.npcs.network.packets.client.large.LargeClonerPacket;
import kamkeel.npcs.network.packets.client.large.LargeSyncPacket;
import net.minecraft.block.Block;
import net.minecraft.entity.Entity;
@@ -98,8 +100,7 @@ public class ServerEventsHandler {
return;
PlayerData data = PlayerDataController.Instance.getPlayerData(event.entityPlayer);
ServerCloneController.Instance.cleanTags(compound);
- if(!Server.sendDataChecked((EntityPlayerMP)event.entityPlayer, EnumPacketClient.CLONE, compound))
- event.entityPlayer.addChatMessage(new ChatComponentText("Entity too big to clone"));
+ PacketHandler.Instance.sendToPlayer(new LargeClonerPacket(compound), (EntityPlayerMP)event.entityPlayer);
data.cloned = compound;
if (event.target instanceof EntityNPCInterface) {
NoppesUtilServer.setEditingNpc(event.entityPlayer, (EntityNPCInterface) event.target);
@@ -137,7 +138,7 @@ public class ServerEventsHandler {
if (merchantrecipelist != null)
{
- Server.sendData(player, EnumPacketClient.VILLAGER_LIST, merchantrecipelist);
+ PacketHandler.Instance.sendToPlayer(new VillagerListPacket(merchantrecipelist), player);
}
}
}
diff --git a/src/main/java/noppes/npcs/blocks/BlockNpcRedstone.java b/src/main/java/noppes/npcs/blocks/BlockNpcRedstone.java
index cf46229f2..c38ae3a64 100644
--- a/src/main/java/noppes/npcs/blocks/BlockNpcRedstone.java
+++ b/src/main/java/noppes/npcs/blocks/BlockNpcRedstone.java
@@ -1,5 +1,7 @@
package noppes.npcs.blocks;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.packets.client.gui.GuiRedstonePacket;
import net.minecraft.block.BlockContainer;
import net.minecraft.block.material.Material;
import net.minecraft.entity.EntityLivingBase;
@@ -32,8 +34,8 @@ public class BlockNpcRedstone extends BlockContainer{
TileEntity tile = par1World.getTileEntity(i, j, k);
NBTTagCompound compound = new NBTTagCompound();
tile.writeToNBT(compound);
- Server.sendData((EntityPlayerMP)player, EnumPacketClient.GUI_REDSTONE, compound);
- return true;
+ PacketHandler.Instance.sendToPlayer(new GuiRedstonePacket(compound), (EntityPlayerMP)player);
+ return true;
}
return false;
}
diff --git a/src/main/java/noppes/npcs/blocks/BlockWaypoint.java b/src/main/java/noppes/npcs/blocks/BlockWaypoint.java
index f089c3f15..632b4b89a 100644
--- a/src/main/java/noppes/npcs/blocks/BlockWaypoint.java
+++ b/src/main/java/noppes/npcs/blocks/BlockWaypoint.java
@@ -1,5 +1,7 @@
package noppes.npcs.blocks;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.packets.client.gui.GuiWaypointPacket;
import net.minecraft.block.BlockContainer;
import net.minecraft.block.material.Material;
import net.minecraft.entity.EntityLivingBase;
@@ -34,7 +36,7 @@ public class BlockWaypoint extends BlockContainer{
TileEntity tile = par1World.getTileEntity(i, j, k);
NBTTagCompound compound = new NBTTagCompound();
tile.writeToNBT(compound);
- Server.sendData((EntityPlayerMP)player, EnumPacketClient.GUI_WAYPOINT, compound);
+ PacketHandler.Instance.sendToPlayer(new GuiWaypointPacket(compound), (EntityPlayerMP)player);
return true;
}
return false;
diff --git a/src/main/java/noppes/npcs/client/PacketHandlerClient.java b/src/main/java/noppes/npcs/client/PacketHandlerClient.java
index 5ec05b4af..49ea68513 100644
--- a/src/main/java/noppes/npcs/client/PacketHandlerClient.java
+++ b/src/main/java/noppes/npcs/client/PacketHandlerClient.java
@@ -48,42 +48,6 @@ public class PacketHandlerClient extends PacketHandlerServer{
MarkData data = MarkData.get((EntityNPCInterface) entity);
data.setNBT(Server.readNBT(buffer));
}
- else if(type == EnumPacketClient.GUI_REDSTONE){
- NoppesUtil.saveRedstoneBlock(player, Server.readNBT(buffer));
- }
- else if(type == EnumPacketClient.GUI_WAYPOINT){
- NoppesUtil.saveWayPointBlock(player, Server.readNBT(buffer));
- }
- else if(type == EnumPacketClient.CLONE){
- NBTTagCompound compound = Server.readNBT(buffer);
- NoppesUtil.openGUI(player, new GuiNpcMobSpawnerAdd(compound));
- }
- else if(type == EnumPacketClient.TELEPORTER){
- CustomNpcs.proxy.openGui((EntityNPCInterface)null,EnumGuiType.NpcDimensions);
- }
- else if(type == EnumPacketClient.GUI_DATA){
- GuiScreen gui = Minecraft.getMinecraft().currentScreen;
- if(gui == null)
- return;
-
- if(gui instanceof GuiNPCInterface && ((GuiNPCInterface)gui).hasSubGui()){
- gui = (GuiScreen) ((GuiNPCInterface)gui).getSubGui();
- }
- else if(gui instanceof GuiContainerNPCInterface && ((GuiContainerNPCInterface)gui).hasSubGui()){
- gui = (GuiScreen) ((GuiContainerNPCInterface)gui).getSubGui();
- }
- if(gui instanceof IGuiData)
- ((IGuiData)gui).setGuiData(Server.readNBT(buffer));
- }
- else if(type == EnumPacketClient.VILLAGER_LIST){
- MerchantRecipeList merchantrecipelist = MerchantRecipeList.func_151390_b(new PacketBuffer(buffer));
- ServerEventsHandler.Merchant.setRecipes(merchantrecipelist);
- }
- else if(type == EnumPacketClient.OPEN_BOOK){
- int x = buffer.readInt(), y = buffer.readInt(), z = buffer.readInt();
-
- NoppesUtil.openGUI(player, new GuiBook(player, ItemStack.loadItemStackFromNBT(Server.readNBT(buffer)), x, y, z));
- }
else if(type == EnumPacketClient.ISGUIOPEN){
boolean isGUIOpen = Minecraft.getMinecraft().currentScreen != null;
diff --git a/src/main/java/noppes/npcs/constants/EnumPacketClient.java b/src/main/java/noppes/npcs/constants/EnumPacketClient.java
index cec4a7eb3..13f19c93d 100644
--- a/src/main/java/noppes/npcs/constants/EnumPacketClient.java
+++ b/src/main/java/noppes/npcs/constants/EnumPacketClient.java
@@ -2,13 +2,6 @@ package
noppes.npcs.constants;
public enum EnumPacketClient {
- GUI_REDSTONE,
- GUI_WAYPOINT,
- GUI_DATA,
- VILLAGER_LIST,
- CLONE,
- TELEPORTER,
- OPEN_BOOK,
ISGUIOPEN,
SCRIPT_OVERLAY_DATA,
SCRIPT_OVERLAY_CLOSE,
diff --git a/src/main/java/noppes/npcs/controllers/CustomGuiController.java b/src/main/java/noppes/npcs/controllers/CustomGuiController.java
index dc4817b39..ef8c2112d 100644
--- a/src/main/java/noppes/npcs/controllers/CustomGuiController.java
+++ b/src/main/java/noppes/npcs/controllers/CustomGuiController.java
@@ -1,6 +1,7 @@
package noppes.npcs.controllers;
import io.netty.buffer.ByteBuf;
+import kamkeel.npcs.network.PacketUtil;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.nbt.NBTTagList;
@@ -27,13 +28,13 @@ public class CustomGuiController {
EntityPlayerMP entityPlayerMP = (EntityPlayerMP) player.getMCEntity();
entityPlayerMP.openGui(CustomNpcs.instance, EnumGuiType.CustomGui.ordinal(), player.getWorld().getMCWorld(), gui.getSlots().size(), 0, 0);
((ContainerCustomGui)((EntityPlayerMP)player.getMCEntity()).openContainer).setGui(gui, (EntityPlayer)player.getMCEntity());
- Server.sendDataChecked((EntityPlayerMP)player.getMCEntity(), EnumPacketClient.GUI_DATA, new Object[]{gui.toNBT()});
+ PacketUtil.sendGuiData((EntityPlayerMP)player.getMCEntity(), gui.toNBT());
}
public static boolean updateGui(IPlayer player, ScriptGui gui) {
if (((EntityPlayerMP)player.getMCEntity()).openContainer instanceof ContainerCustomGui) {
((ContainerCustomGui)((EntityPlayerMP)player.getMCEntity()).openContainer).setGui(gui, (EntityPlayer)player.getMCEntity());
- Server.sendDataChecked((EntityPlayerMP)player.getMCEntity(), EnumPacketClient.GUI_DATA, new Object[]{gui.toNBT()});
+ PacketUtil.sendGuiData((EntityPlayerMP)player.getMCEntity(), gui.toNBT());
return true;
} else {
return false;
diff --git a/src/main/java/noppes/npcs/controllers/data/BankData.java b/src/main/java/noppes/npcs/controllers/data/BankData.java
index 95fa3aa1e..cef17492d 100644
--- a/src/main/java/noppes/npcs/controllers/data/BankData.java
+++ b/src/main/java/noppes/npcs/controllers/data/BankData.java
@@ -1,5 +1,6 @@
package noppes.npcs.controllers.data;
+import kamkeel.npcs.network.PacketUtil;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.inventory.Container;
@@ -108,7 +109,8 @@ public class BankData {
if (container != null)
container.setCurrency(item);
}
- Server.sendDataChecked((EntityPlayerMP) player, EnumPacketClient.GUI_DATA, compound);
+
+ PacketUtil.sendGuiData((EntityPlayerMP) player, compound);
}
private ContainerNPCBankInterface getContainer(EntityPlayer player){
Container con = player.openContainer;
diff --git a/src/main/java/noppes/npcs/controllers/data/DataTransform.java b/src/main/java/noppes/npcs/controllers/data/DataTransform.java
index ad5402165..f4f1a08e5 100644
--- a/src/main/java/noppes/npcs/controllers/data/DataTransform.java
+++ b/src/main/java/noppes/npcs/controllers/data/DataTransform.java
@@ -18,13 +18,13 @@ public class DataTransform {
public NBTTagCompound stats;
public NBTTagCompound role;
public NBTTagCompound job;
-
+
public boolean hasDisplay, hasAi, hasAdvanced, hasInv, hasStats, hasRole, hasJob, isActive;
-
+
private EntityNPCInterface npc;
-
+
public boolean editingModus = false;
-
+
public DataTransform(EntityNPCInterface npc){
this.npc = npc;
}
@@ -47,11 +47,11 @@ public class DataTransform {
compound.setTag("TransformRole", role);
if(hasJob)
compound.setTag("TransformJob", job);
-
+
return compound;
}
-
- public Object writeOptions(NBTTagCompound compound) {
+
+ public NBTTagCompound writeOptions(NBTTagCompound compound) {
compound.setBoolean("TransformHasDisplay", hasDisplay);
compound.setBoolean("TransformHasAI", hasAi);
compound.setBoolean("TransformHasAdvanced", hasAdvanced);
@@ -62,7 +62,7 @@ public class DataTransform {
compound.setBoolean("TransformEditingModus", editingModus);
return compound;
}
-
+
public void readToNBT(NBTTagCompound compound) {
isActive = compound.getBoolean("TransformIsActive");
@@ -75,7 +75,7 @@ public class DataTransform {
job = hasJob?compound.getCompoundTag("TransformJob"): getJob();
role = hasRole?compound.getCompoundTag("TransformRole"): getRole();
}
-
+
public NBTTagCompound getJob() {
NBTTagCompound compound = new NBTTagCompound();
@@ -83,17 +83,17 @@ public class DataTransform {
if (npc.advanced.job != EnumJobType.None && npc.jobInterface != null) {
npc.jobInterface.writeToNBT(compound);
}
-
+
return compound;
}
public NBTTagCompound getRole() {
NBTTagCompound compound = new NBTTagCompound();
- compound.setInteger("Role", npc.advanced.role.ordinal());
+ compound.setInteger("Role", npc.advanced.role.ordinal());
if (npc.advanced.role != EnumRoleType.None && npc.roleInterface != null) {
npc.roleInterface.writeToNBT(compound);
}
-
+
return compound;
}
@@ -102,7 +102,7 @@ public class DataTransform {
if(npc instanceof EntityCustomNpc){
compound.setTag("ModelData", ((EntityCustomNpc)npc).modelData.writeToNBT());
}
-
+
return compound;
}
@@ -119,7 +119,7 @@ public class DataTransform {
npc.advanced.job = jopType;
npc.advanced.role = roleType;
-
+
return compound;
}
@@ -132,7 +132,7 @@ public class DataTransform {
boolean hadStats = hasStats;
boolean hadRole = hasRole;
boolean hadJob = hasJob;
-
+
hasDisplay = compound.getBoolean("TransformHasDisplay");
hasAi = compound.getBoolean("TransformHasAI");
hasAdvanced = compound.getBoolean("TransformHasAdvanced");
@@ -158,7 +158,7 @@ public class DataTransform {
if(hasRole && !hadRole)
role = getRole();
}
-
+
public boolean isValid(){
return hasAdvanced || hasAi || hasDisplay || hasInv || hasStats || hasJob || hasRole;
}
@@ -166,14 +166,14 @@ public class DataTransform {
public NBTTagCompound processAdvanced(NBTTagCompound compoundAdv,
NBTTagCompound compoundRole, NBTTagCompound compoundJob) {
-
+
if(hasAdvanced)
compoundAdv = advanced;
if(hasRole)
compoundRole = role;
if(hasJob)
compoundJob = job;
-
+
Set names = compoundRole.func_150296_c();
for(String name : names)
compoundAdv.setTag(name, compoundRole.getTag(name));
@@ -181,10 +181,10 @@ public class DataTransform {
names = compoundJob.func_150296_c();
for(String name : names)
compoundAdv.setTag(name, compoundJob.getTag(name));
-
+
return compoundAdv;
}
-
+
public void transform(boolean isActive){
if(this.isActive == isActive)
return;
@@ -205,14 +205,14 @@ public class DataTransform {
NBTTagCompound compoundAdv = getAdvanced();
NBTTagCompound compoundRole = getRole();
NBTTagCompound compoundJob = getJob();
-
+
NBTTagCompound compound = processAdvanced(compoundAdv, compoundRole, compoundJob);
npc.advanced.readToNBT(compound);
- if (npc.advanced.role != EnumRoleType.None && npc.roleInterface != null)
+ if (npc.advanced.role != EnumRoleType.None && npc.roleInterface != null)
npc.roleInterface.readFromNBT(NBTTags.NBTMerge(compoundRole, compound));
if (npc.advanced.job != EnumJobType.None && npc.jobInterface != null)
- npc.jobInterface.readFromNBT(NBTTags.NBTMerge(compoundJob, compound));
-
+ npc.jobInterface.readFromNBT(NBTTags.NBTMerge(compoundJob, compound));
+
if(hasAdvanced)
advanced = compoundAdv;
if(hasRole)
From 43b0e7c23b6bd5550cf82c1c0e90bf6147187b30 Mon Sep 17 00:00:00 2001
From: Kam
Date: Thu, 30 Jan 2025 12:16:16 -0500
Subject: [PATCH 033/357] More Reworking
---
.../kamkeel/npcs/network/PacketHandler.java | 24 ++++----
.../npcs/network/enums/EnumClientPacket.java | 56 ++++++++++---------
.../packets/client/ConfigCommandPacket.java | 4 +-
.../client/large/LargePartyDataPacket.java | 2 +-
.../client/large/LargeScrollDataPacket.java | 2 +-
.../client/large/LargeScrollGroupPacket.java | 2 +-
.../client/large/LargeScrollListPacket.java | 2 +-
.../packets/client/large/LargeSyncPacket.java | 2 +-
.../packets/client/npc/RolePacket.java | 2 +-
.../java/noppes/npcs/blocks/BlockBook.java | 8 +--
10 files changed, 50 insertions(+), 54 deletions(-)
diff --git a/src/main/java/kamkeel/npcs/network/PacketHandler.java b/src/main/java/kamkeel/npcs/network/PacketHandler.java
index cd01b870a..0feb0f131 100644
--- a/src/main/java/kamkeel/npcs/network/PacketHandler.java
+++ b/src/main/java/kamkeel/npcs/network/PacketHandler.java
@@ -30,7 +30,6 @@ public final class PacketHandler {
public static final PacketChannel INFO_PACKET = new PacketChannel("CNPC+|Info", EnumPacketType.INFO);
public static final PacketChannel DATA_PACKET = new PacketChannel("CNPC+|Data", EnumPacketType.DATA);
public static final PacketChannel CLIENT_PACKET = new PacketChannel("CNPC+|Client", EnumPacketType.CLIENT);
- public static final PacketChannel LARGE_PACKET = new PacketChannel("CNPC+|Large", EnumPacketType.LARGE);
private static final List packetChannels = new ArrayList<>();
@@ -39,23 +38,12 @@ public final class PacketHandler {
packetChannels.add(INFO_PACKET);
packetChannels.add(DATA_PACKET);
packetChannels.add(CLIENT_PACKET);
- packetChannels.add(LARGE_PACKET);
this.registerChannels();
this.registerLargePackets();
this.registerClientPackets();
}
- public void registerLargePackets(){
- // Large Packets
- LARGE_PACKET.registerPacket(new LargeScrollGroupPacket());
- LARGE_PACKET.registerPacket(new LargeScrollDataPacket());
- LARGE_PACKET.registerPacket(new LargeScrollListPacket());
- LARGE_PACKET.registerPacket(new LargeSyncPacket());
- LARGE_PACKET.registerPacket(new LargeGuiDataPacket());
- LARGE_PACKET.registerPacket(new LargePartyDataPacket());
- }
-
public void registerClientPackets(){
// Client Packets
CLIENT_PACKET.registerPacket(new AchievementPacket());
@@ -75,7 +63,6 @@ public final class PacketHandler {
CLIENT_PACKET.registerPacket(new VillagerListPacket());
// Client | GUI Packets
- CLIENT_PACKET.registerPacket(new GuiClonerPacket());
CLIENT_PACKET.registerPacket(new GuiClosePacket());
CLIENT_PACKET.registerPacket(new GuiOpenPacket());
CLIENT_PACKET.registerPacket(new GuiErrorPacket());
@@ -83,7 +70,7 @@ public final class PacketHandler {
CLIENT_PACKET.registerPacket(new GuiTeleporterPacket());
CLIENT_PACKET.registerPacket(new GuiWaypointPacket());
CLIENT_PACKET.registerPacket(new IsGuiOpenPacket());
- CLIENT_PACKET.registerPacket(new OpenBookPacket());
+ CLIENT_PACKET.registerPacket(new GuiOpenBookPacket());
// Client | NPC Packets
CLIENT_PACKET.registerPacket(new DeleteNpcPacket());
@@ -96,6 +83,15 @@ public final class PacketHandler {
CLIENT_PACKET.registerPacket(new ScriptedParticlePacket());
CLIENT_PACKET.registerPacket(new ScriptOverlayClosePacket());
CLIENT_PACKET.registerPacket(new ScriptOverlayDataPacket());
+
+ // Client | Large Packets
+ CLIENT_PACKET.registerPacket(new LargeClonerPacket());
+ CLIENT_PACKET.registerPacket(new LargeScrollGroupPacket());
+ CLIENT_PACKET.registerPacket(new LargeScrollDataPacket());
+ CLIENT_PACKET.registerPacket(new LargeScrollListPacket());
+ CLIENT_PACKET.registerPacket(new LargeSyncPacket());
+ CLIENT_PACKET.registerPacket(new LargeGuiDataPacket());
+ CLIENT_PACKET.registerPacket(new LargePartyDataPacket());
}
private void registerChannels() {
diff --git a/src/main/java/kamkeel/npcs/network/enums/EnumClientPacket.java b/src/main/java/kamkeel/npcs/network/enums/EnumClientPacket.java
index 489662c7d..54035092f 100644
--- a/src/main/java/kamkeel/npcs/network/enums/EnumClientPacket.java
+++ b/src/main/java/kamkeel/npcs/network/enums/EnumClientPacket.java
@@ -2,54 +2,56 @@ package kamkeel.npcs.network.enums;
// Packets to the Client
public enum EnumClientPacket {
+ // Synchronization
SYNC,
+ CONFIG_COMMAND,
+
+ // Messages
CHAT_ALERT,
ACHIEVEMENT,
+ CHATBUBBLE,
SOUND,
- PARTY_MESSAGE,
- SYNCRECIPES_ADD,
- SYNCRECIPES_WORKBENCH,
DIALOG,
QUEST_COMPLETION,
+
+
+ // NPC
EDIT_NPC,
- PLAY_SOUND,
- PLAY_MUSIC,
UPDATE_NPC,
- ROLE,
- GUI,
- SCRIPTED_PARTICLE,
- PARTICLE,
+ ROLE_NPC,
DELETE_NPC,
+ CLONE_NPC,
+
+ // Data
SCROLL_LIST,
SCROLL_DATA,
SCROLL_GROUP,
SCROLL_SELECTED,
+ PARTY_DATA,
+
+ // GUI
+ GUI_OPEN,
GUI_REDSTONE,
GUI_WAYPOINT,
+ GUI_TELEPORTER,
+ GUI_BOOK,
GUI_DATA,
GUI_ERROR,
GUI_CLOSE,
- VILLAGER_LIST,
- CHATBUBBLE,
- SYNCRECIPES_CARPENTRYBENCH,
- CLONE,
- TELEPORTER,
- OPEN_BOOK,
- CONFIG,
ISGUIOPEN,
- SCRIPT_OVERLAY_DATA,
- SCRIPT_OVERLAY_CLOSE,
- SWING_PLAYER_ARM,
- UPDATE_ITEM,
+
+ // Visual
+ SCRIPTED_PARTICLE,
+ PARTICLE,
PLAYER_UPDATE_SKIN_OVERLAYS,
UPDATE_ANIMATIONS,
+ SCRIPT_OVERLAY_DATA,
+ SCRIPT_OVERLAY_CLOSE,
OVERLAY_QUEST_TRACKING,
- DISABLE_MOUSE_INPUT,
- SYNC_WEAPON,
MARK_DATA,
- SYNC_ADD, SYNC_END, SYNC_UPDATE, SYNC_REMOVE, SYNC_PLAYER,
- SYNC_CONFIG,
- DBC_FORM,
- LARGE_NBT_PART, LARGE_NBT_END,
- PARTY_DATA
+
+ // Other
+ VILLAGER_LIST,
+ SWING_PLAYER_ARM,
+ DISABLE_MOUSE_INPUT,
}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/ConfigCommandPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/ConfigCommandPacket.java
index 506e8032e..b88f11929 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/ConfigCommandPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/ConfigCommandPacket.java
@@ -10,8 +10,6 @@ import kamkeel.npcs.network.enums.EnumClientPacket;
import kamkeel.npcs.network.enums.EnumConfigOperation;
import kamkeel.npcs.util.ByteBufUtils;
import net.minecraft.entity.player.EntityPlayer;
-import noppes.npcs.CustomNpcs;
-import noppes.npcs.Server;
import noppes.npcs.client.ClientProxy;
import noppes.npcs.config.ConfigClient;
import noppes.npcs.client.ClientProxy.FontContainer;
@@ -34,7 +32,7 @@ public final class ConfigCommandPacket extends AbstractPacket {
@Override
public Enum getType() {
- return EnumClientPacket.CONFIG;
+ return EnumClientPacket.CONFIG_COMMAND;
}
@Override
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/large/LargePartyDataPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/large/LargePartyDataPacket.java
index b7b40c2dc..9d4f115e1 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/large/LargePartyDataPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/large/LargePartyDataPacket.java
@@ -39,7 +39,7 @@ public final class LargePartyDataPacket extends LargeAbstractPacket {
@Override
public PacketChannel getChannel() {
- return PacketHandler.LARGE_PACKET;
+ return PacketHandler.CLIENT_PACKET;
}
@Override
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/large/LargeScrollDataPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/large/LargeScrollDataPacket.java
index a1d2b102a..377bbc5e9 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/large/LargeScrollDataPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/large/LargeScrollDataPacket.java
@@ -32,7 +32,7 @@ public final class LargeScrollDataPacket extends LargeAbstractPacket {
@Override
public PacketChannel getChannel() {
- return PacketHandler.LARGE_PACKET;
+ return PacketHandler.CLIENT_PACKET;
}
@Override
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/large/LargeScrollGroupPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/large/LargeScrollGroupPacket.java
index 9a9c54bab..67cca5755 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/large/LargeScrollGroupPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/large/LargeScrollGroupPacket.java
@@ -31,7 +31,7 @@ public final class LargeScrollGroupPacket extends LargeAbstractPacket {
@Override
public PacketChannel getChannel() {
- return PacketHandler.LARGE_PACKET;
+ return PacketHandler.CLIENT_PACKET;
}
@Override
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/large/LargeScrollListPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/large/LargeScrollListPacket.java
index c6706cf04..2649421e4 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/large/LargeScrollListPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/large/LargeScrollListPacket.java
@@ -31,7 +31,7 @@ public final class LargeScrollListPacket extends LargeAbstractPacket {
@Override
public PacketChannel getChannel() {
- return PacketHandler.LARGE_PACKET;
+ return PacketHandler.CLIENT_PACKET;
}
@Override
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/large/LargeSyncPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/large/LargeSyncPacket.java
index e454467f9..d7f7bd4da 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/large/LargeSyncPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/large/LargeSyncPacket.java
@@ -47,7 +47,7 @@ public final class LargeSyncPacket extends LargeAbstractPacket {
@Override
public PacketChannel getChannel() {
- return PacketHandler.LARGE_PACKET; // Or whichever channel you want.
+ return PacketHandler.CLIENT_PACKET;
}
@Override
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/npc/RolePacket.java b/src/main/java/kamkeel/npcs/network/packets/client/npc/RolePacket.java
index a39ccd7fb..484a609aa 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/npc/RolePacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/npc/RolePacket.java
@@ -30,7 +30,7 @@ public final class RolePacket extends AbstractPacket {
@Override
public Enum getType() {
- return EnumClientPacket.ROLE;
+ return EnumClientPacket.ROLE_NPC;
}
@Override
diff --git a/src/main/java/noppes/npcs/blocks/BlockBook.java b/src/main/java/noppes/npcs/blocks/BlockBook.java
index e031f61b6..c67fa3ebe 100644
--- a/src/main/java/noppes/npcs/blocks/BlockBook.java
+++ b/src/main/java/noppes/npcs/blocks/BlockBook.java
@@ -1,5 +1,7 @@
package noppes.npcs.blocks;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.packets.client.gui.GuiOpenBookPacket;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.init.Blocks;
@@ -10,9 +12,7 @@ import net.minecraft.tileentity.TileEntity;
import net.minecraft.world.World;
import noppes.npcs.CustomItems;
import noppes.npcs.CustomNpcsPermissions;
-import noppes.npcs.Server;
import noppes.npcs.blocks.tiles.TileBook;
-import noppes.npcs.constants.EnumPacketClient;
public class BlockBook extends BlockRotated{
@@ -32,8 +32,8 @@ public class BlockBook extends BlockRotated{
if (currentItem != null && currentItem.getItem() == CustomItems.wand && CustomNpcsPermissions.hasPermission(player, CustomNpcsPermissions.EDIT_BOOK)) {
((TileBook)tile).book.func_150996_a(Items.writable_book);
}
- Server.sendData((EntityPlayerMP)player, EnumPacketClient.OPEN_BOOK, i, j, k, ((TileBook)tile).book.writeToNBT(new NBTTagCompound()));
- return true;
+ PacketHandler.Instance.sendToPlayer(new GuiOpenBookPacket(i, j, k, ((TileBook)tile).book.writeToNBT(new NBTTagCompound())), (EntityPlayerMP) player);
+ return true;
}
@Override
From c3179b36f22c66c8f0e7c62ac47f676e0226cc6f Mon Sep 17 00:00:00 2001
From: Kam
Date: Thu, 30 Jan 2025 12:44:39 -0500
Subject: [PATCH 034/357] Remove PacketHandlerClient
---
.../kamkeel/npcs/network/PacketChannel.java | 4 +
.../kamkeel/npcs/network/PacketHandler.java | 2 +-
.../java/kamkeel/npcs/network/PacketUtil.java | 11 +-
.../npcs/network/enums/EnumClientPacket.java | 3 +-
.../npcs/network/enums/EnumPacketType.java | 2 +-
.../packets/client/ChatAlertPacket.java | 4 +-
.../client/DisableMouseInputPacket.java | 3 +-
.../client/OverlayQuestTrackingPacket.java | 4 +-
.../packets/client/ParticlePacket.java | 4 +-
.../packets/client/ScrollSelectedPacket.java | 4 +-
.../packets/client/gui/IsGuiOpenPacket.java | 4 +-
.../packets/client/large/LargeSyncPacket.java | 6 +
.../packets/client/npc/WeaponNpcPacket.java | 66 ++++++++
.../client/script/ScriptedParticlePacket.java | 3 +-
.../java/noppes/npcs/NoppesUtilPlayer.java | 25 +--
.../java/noppes/npcs/PacketHandlerPlayer.java | 23 +--
.../java/noppes/npcs/PacketHandlerServer.java | 133 +++++++--------
src/main/java/noppes/npcs/Server.java | 88 +---------
.../java/noppes/npcs/ServerEventsHandler.java | 4 +-
.../java/noppes/npcs/client/NoppesUtil.java | 12 +-
.../npcs/client/PacketHandlerClient.java | 159 ------------------
.../npcs/constants/EnumPacketClient.java | 14 +-
.../npcs/controllers/CustomGuiController.java | 11 +-
.../npcs/controllers/PartyController.java | 4 +-
.../npcs/controllers/data/AnimationData.java | 5 +-
.../npcs/controllers/data/MarkData.java | 5 +-
.../controllers/data/PlayerQuestData.java | 6 +-
.../npcs/entity/EntityNPCInterface.java | 14 +-
.../npcs/entity/data/DataSkinOverlays.java | 4 +-
.../npcs/scripted/entity/ScriptPlayer.java | 7 +-
30 files changed, 238 insertions(+), 396 deletions(-)
create mode 100644 src/main/java/kamkeel/npcs/network/packets/client/npc/WeaponNpcPacket.java
delete mode 100644 src/main/java/noppes/npcs/client/PacketHandlerClient.java
diff --git a/src/main/java/kamkeel/npcs/network/PacketChannel.java b/src/main/java/kamkeel/npcs/network/PacketChannel.java
index c7109d856..aae7eca34 100644
--- a/src/main/java/kamkeel/npcs/network/PacketChannel.java
+++ b/src/main/java/kamkeel/npcs/network/PacketChannel.java
@@ -34,6 +34,10 @@ public class PacketChannel {
}
public void registerPacket(AbstractPacket packet) {
+ if(packets.containsKey(packet.getType().ordinal())){
+ System.out.println("Packet ID: " + packet.getType().ordinal() + " is already registered in " + this.channelName);
+ return;
+ }
this.packets.put(packet.getType().ordinal(), packet);
}
}
diff --git a/src/main/java/kamkeel/npcs/network/PacketHandler.java b/src/main/java/kamkeel/npcs/network/PacketHandler.java
index 0feb0f131..e1f6e0407 100644
--- a/src/main/java/kamkeel/npcs/network/PacketHandler.java
+++ b/src/main/java/kamkeel/npcs/network/PacketHandler.java
@@ -40,7 +40,6 @@ public final class PacketHandler {
packetChannels.add(CLIENT_PACKET);
this.registerChannels();
- this.registerLargePackets();
this.registerClientPackets();
}
@@ -78,6 +77,7 @@ public final class PacketHandler {
CLIENT_PACKET.registerPacket(new UpdateNpcPacket());
CLIENT_PACKET.registerPacket(new DialogPacket());
CLIENT_PACKET.registerPacket(new RolePacket());
+ CLIENT_PACKET.registerPacket(new WeaponNpcPacket());
// Client | Script Packets
CLIENT_PACKET.registerPacket(new ScriptedParticlePacket());
diff --git a/src/main/java/kamkeel/npcs/network/PacketUtil.java b/src/main/java/kamkeel/npcs/network/PacketUtil.java
index 0afb9cb1d..d108e7517 100644
--- a/src/main/java/kamkeel/npcs/network/PacketUtil.java
+++ b/src/main/java/kamkeel/npcs/network/PacketUtil.java
@@ -5,12 +5,9 @@ import kamkeel.npcs.network.packets.client.AchievementPacket;
import kamkeel.npcs.network.packets.client.QuestCompletionPacket;
import kamkeel.npcs.network.packets.client.ScrollSelectedPacket;
import kamkeel.npcs.network.packets.client.gui.GuiClosePacket;
-import kamkeel.npcs.network.packets.client.large.LargeGuiDataPacket;
+import kamkeel.npcs.network.packets.client.large.*;
import kamkeel.npcs.network.packets.client.gui.GuiErrorPacket;
import kamkeel.npcs.network.packets.client.gui.GuiOpenPacket;
-import kamkeel.npcs.network.packets.client.large.LargeScrollGroupPacket;
-import kamkeel.npcs.network.packets.client.large.LargeScrollDataPacket;
-import kamkeel.npcs.network.packets.client.large.LargeScrollListPacket;
import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.nbt.NBTTagCompound;
import noppes.npcs.constants.EnumGuiType;
@@ -65,6 +62,12 @@ public class PacketUtil {
PacketHandler.Instance.sendToPlayer(packet, playerMP);
}
+ public static void sendPartyData(EntityPlayerMP playerMP, NBTTagCompound compound){
+ LargePartyDataPacket packet = new LargePartyDataPacket(compound);
+ PacketHandler.Instance.sendToPlayer(packet, playerMP);
+ }
+
+
public static void sendQuestComplete(EntityPlayerMP playerMP, NBTTagCompound compound){
QuestCompletionPacket packet = new QuestCompletionPacket(compound);
PacketHandler.Instance.sendToPlayer(packet, playerMP);
diff --git a/src/main/java/kamkeel/npcs/network/enums/EnumClientPacket.java b/src/main/java/kamkeel/npcs/network/enums/EnumClientPacket.java
index 54035092f..934b8a8c2 100644
--- a/src/main/java/kamkeel/npcs/network/enums/EnumClientPacket.java
+++ b/src/main/java/kamkeel/npcs/network/enums/EnumClientPacket.java
@@ -21,6 +21,7 @@ public enum EnumClientPacket {
ROLE_NPC,
DELETE_NPC,
CLONE_NPC,
+ WEAPON_NPC,
// Data
SCROLL_LIST,
@@ -49,7 +50,7 @@ public enum EnumClientPacket {
SCRIPT_OVERLAY_CLOSE,
OVERLAY_QUEST_TRACKING,
MARK_DATA,
-
+
// Other
VILLAGER_LIST,
SWING_PLAYER_ARM,
diff --git a/src/main/java/kamkeel/npcs/network/enums/EnumPacketType.java b/src/main/java/kamkeel/npcs/network/enums/EnumPacketType.java
index c7ccd39cc..83f9049f7 100644
--- a/src/main/java/kamkeel/npcs/network/enums/EnumPacketType.java
+++ b/src/main/java/kamkeel/npcs/network/enums/EnumPacketType.java
@@ -1,5 +1,5 @@
package kamkeel.npcs.network.enums;
public enum EnumPacketType {
- INFO, DATA, CLIENT, LARGE
+ INFO, DATA, CLIENT
}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/ChatAlertPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/ChatAlertPacket.java
index b5aa7cd28..de17c3f37 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/ChatAlertPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/ChatAlertPacket.java
@@ -10,8 +10,6 @@ import kamkeel.npcs.network.enums.EnumClientPacket;
import kamkeel.npcs.util.ByteBufUtils;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.util.ChatComponentTranslation;
-import noppes.npcs.CustomNpcs;
-import noppes.npcs.Server;
import noppes.npcs.config.ConfigClient;
import java.io.IOException;
@@ -50,7 +48,7 @@ public final class ChatAlertPacket extends AbstractPacket {
StringBuilder message = new StringBuilder();
String str;
- while ((str = Server.readString(in)) != null && !str.isEmpty()) {
+ while ((str = ByteBufUtils.readString(in)) != null && !str.isEmpty()) {
message.append(str);
}
player.addChatMessage(new ChatComponentTranslation(message.toString()));
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/DisableMouseInputPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/DisableMouseInputPacket.java
index 806d6f3a2..6df5e1d9b 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/DisableMouseInputPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/DisableMouseInputPacket.java
@@ -9,7 +9,6 @@ import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.enums.EnumClientPacket;
import kamkeel.npcs.util.ByteBufUtils;
import net.minecraft.entity.player.EntityPlayer;
-import noppes.npcs.Server;
import noppes.npcs.client.ClientEventHandler;
import java.io.IOException;
@@ -47,7 +46,7 @@ public final class DisableMouseInputPacket extends AbstractPacket {
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
long duration = in.readLong();
- String parsedButtons = Server.readString(in);
+ String parsedButtons = ByteBufUtils.readString(in);
if (parsedButtons == null || parsedButtons.isEmpty()) {
ClientEventHandler.disabledButtonTimes.put(-1, duration);
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/OverlayQuestTrackingPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/OverlayQuestTrackingPacket.java
index 70a8be71f..eb75f6e13 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/OverlayQuestTrackingPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/OverlayQuestTrackingPacket.java
@@ -11,8 +11,6 @@ import kamkeel.npcs.util.ByteBufUtils;
import net.minecraft.client.Minecraft;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.nbt.NBTTagCompound;
-import noppes.npcs.CustomNpcs;
-import noppes.npcs.Server;
import noppes.npcs.client.gui.OverlayQuestTracking;
import noppes.npcs.client.ClientCacheHandler;
@@ -48,7 +46,7 @@ public final class OverlayQuestTrackingPacket extends AbstractPacket {
@Override
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
try {
- NBTTagCompound nbt = Server.readNBT(in);
+ NBTTagCompound nbt = ByteBufUtils.readNBT(in);
ClientCacheHandler.questTrackingOverlay = new OverlayQuestTracking(Minecraft.getMinecraft());
ClientCacheHandler.questTrackingOverlay.setOverlayData(nbt);
} catch (IOException e) {
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/ParticlePacket.java b/src/main/java/kamkeel/npcs/network/packets/client/ParticlePacket.java
index 060c02cc8..3a0475a86 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/ParticlePacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/ParticlePacket.java
@@ -11,8 +11,6 @@ import kamkeel.npcs.util.ByteBufUtils;
import net.minecraft.client.Minecraft;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.world.World;
-import noppes.npcs.CustomNpcs;
-import noppes.npcs.Server;
import java.io.IOException;
import java.util.Random;
@@ -80,7 +78,7 @@ public final class ParticlePacket extends AbstractPacket {
float width = buffer.readFloat();
float yOffset = buffer.readFloat();
- String particle = Server.readString(buffer);
+ String particle = ByteBufUtils.readString(buffer);
World worldObj = Minecraft.getMinecraft().theWorld;
Random rand = worldObj.rand;
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/ScrollSelectedPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/ScrollSelectedPacket.java
index a43bdc77f..d91d4ca76 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/ScrollSelectedPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/ScrollSelectedPacket.java
@@ -11,8 +11,6 @@ import kamkeel.npcs.util.ByteBufUtils;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.GuiScreen;
import net.minecraft.entity.player.EntityPlayer;
-import noppes.npcs.CustomNpcs;
-import noppes.npcs.Server;
import noppes.npcs.client.gui.util.IScrollData;
import java.io.IOException;
@@ -48,7 +46,7 @@ public final class ScrollSelectedPacket extends AbstractPacket {
public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
GuiScreen gui = Minecraft.getMinecraft().currentScreen;
if (gui instanceof IScrollData) {
- String selected = Server.readString(in);
+ String selected = ByteBufUtils.readString(in);
((IScrollData) gui).setSelected(selected);
}
}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/gui/IsGuiOpenPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/gui/IsGuiOpenPacket.java
index 30be1b9fc..f8e1758f0 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/gui/IsGuiOpenPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/gui/IsGuiOpenPacket.java
@@ -30,9 +30,7 @@ public final class IsGuiOpenPacket extends AbstractPacket {
}
@Override
- public void sendData(ByteBuf out) throws IOException {
- // TODO: Send Packet
- }
+ public void sendData(ByteBuf out) throws IOException {}
@SideOnly(Side.CLIENT)
@Override
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/large/LargeSyncPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/large/LargeSyncPacket.java
index d7f7bd4da..d634794b9 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/large/LargeSyncPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/large/LargeSyncPacket.java
@@ -1,6 +1,7 @@
package kamkeel.npcs.network.packets.client.large;
import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
import io.netty.buffer.ByteBuf;
import io.netty.buffer.Unpooled;
import kamkeel.npcs.controllers.SyncController;
@@ -11,9 +12,14 @@ import kamkeel.npcs.network.enums.EnumClientPacket;
import kamkeel.npcs.network.enums.EnumSyncAction;
import kamkeel.npcs.network.enums.EnumSyncType;
import kamkeel.npcs.util.ByteBufUtils;
+import net.minecraft.client.Minecraft;
+import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import noppes.npcs.CustomNpcs;
+import noppes.npcs.Server;
+import noppes.npcs.entity.EntityNPCInterface;
import java.io.IOException;
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/npc/WeaponNpcPacket.java b/src/main/java/kamkeel/npcs/network/packets/client/npc/WeaponNpcPacket.java
new file mode 100644
index 000000000..c1e8f48f1
--- /dev/null
+++ b/src/main/java/kamkeel/npcs/network/packets/client/npc/WeaponNpcPacket.java
@@ -0,0 +1,66 @@
+package kamkeel.npcs.network.packets.client.npc;
+
+import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
+import io.netty.buffer.ByteBuf;
+import kamkeel.npcs.network.AbstractPacket;
+import kamkeel.npcs.network.PacketChannel;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.enums.EnumClientPacket;
+import kamkeel.npcs.util.ByteBufUtils;
+import net.minecraft.client.Minecraft;
+import net.minecraft.entity.Entity;
+import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.item.ItemStack;
+import net.minecraft.nbt.NBTTagCompound;
+import noppes.npcs.Server;
+import noppes.npcs.client.NoppesUtil;
+import noppes.npcs.entity.EntityNPCInterface;
+
+import java.io.IOException;
+
+public final class WeaponNpcPacket extends AbstractPacket {
+ public static final String packetName = "Client|WeaponNpc";
+
+ private int entityId;
+ private int weaponIndex;
+ private NBTTagCompound compound;
+
+ public WeaponNpcPacket() {}
+
+ public WeaponNpcPacket(int entityId, int weaponIndex, NBTTagCompound compound) {
+ this.entityId = entityId;
+ this.weaponIndex = weaponIndex;
+ this.compound = compound;
+ }
+
+ @Override
+ public Enum getType() {
+ return EnumClientPacket.WEAPON_NPC;
+ }
+
+ @Override
+ public PacketChannel getChannel() {
+ return PacketHandler.CLIENT_PACKET;
+ }
+
+ @Override
+ public void sendData(ByteBuf out) throws IOException {
+ out.writeInt(this.entityId);
+ out.writeInt(this.weaponIndex);
+
+ ByteBufUtils.writeNBT(out, this.compound);
+ }
+
+ @SideOnly(Side.CLIENT)
+ @Override
+ public void receiveData(ByteBuf in, EntityPlayer player) throws IOException {
+ Entity entity = Minecraft.getMinecraft().theWorld.getEntityByID(in.readInt());
+ if(!(entity instanceof EntityNPCInterface))
+ return;
+ EntityNPCInterface npc = (EntityNPCInterface) entity;
+ int weaponSlotIndex = in.readInt();
+ ItemStack stack = ItemStack.loadItemStackFromNBT(ByteBufUtils.readNBT(in));
+ npc.inventory.weapons.put(weaponSlotIndex,stack);
+ }
+}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/script/ScriptedParticlePacket.java b/src/main/java/kamkeel/npcs/network/packets/client/script/ScriptedParticlePacket.java
index a1aab8fa1..cd5cda8cd 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/script/ScriptedParticlePacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/client/script/ScriptedParticlePacket.java
@@ -14,7 +14,6 @@ import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.world.World;
import noppes.npcs.CustomNpcs;
-import noppes.npcs.Server;
import noppes.npcs.client.fx.CustomFX;
import noppes.npcs.scripted.ScriptParticle;
@@ -62,7 +61,7 @@ public final class ScriptedParticlePacket extends AbstractPacket {
NBTTagCompound compound;
ScriptParticle particle;
try {
- compound = Server.readNBT(buffer);
+ compound = ByteBufUtils.readNBT(buffer);
particle = ScriptParticle.fromNBT(compound);
} catch (IOException ignored) {
return;
diff --git a/src/main/java/noppes/npcs/NoppesUtilPlayer.java b/src/main/java/noppes/npcs/NoppesUtilPlayer.java
index 46fe77a0a..794804db7 100644
--- a/src/main/java/noppes/npcs/NoppesUtilPlayer.java
+++ b/src/main/java/noppes/npcs/NoppesUtilPlayer.java
@@ -6,7 +6,12 @@ import io.netty.buffer.Unpooled;
import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.PacketUtil;
import kamkeel.npcs.network.enums.EnumSoundOperation;
+import kamkeel.npcs.network.packets.client.DisableMouseInputPacket;
+import kamkeel.npcs.network.packets.client.OverlayQuestTrackingPacket;
import kamkeel.npcs.network.packets.client.SoundManagementPacket;
+import kamkeel.npcs.network.packets.client.SwingPlayerArmPacket;
+import kamkeel.npcs.network.packets.client.gui.IsGuiOpenPacket;
+import kamkeel.npcs.util.ByteBufUtils;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.inventory.Container;
@@ -137,11 +142,11 @@ public class NoppesUtilPlayer {
}
}
- Server.sendData(player, EnumPacketClient.DISABLE_MOUSE_INPUT, time, stringedIds.toString());
+ PacketHandler.Instance.sendToPlayer(new DisableMouseInputPacket(time, stringedIds.toString()), player);
}
public static void swingPlayerArm(EntityPlayerMP player){
- Server.sendData(player, EnumPacketClient.SWING_PLAYER_ARM);
+ PacketHandler.Instance.sendToPlayer(new SwingPlayerArmPacket(), player);
}
private static void followerBuy(RoleFollower role,IInventory currencyInv,EntityPlayerMP player, EntityNPCInterface npc){
@@ -306,7 +311,7 @@ public class NoppesUtilPlayer {
public static void updateQuestLogData(ByteBuf buffer, EntityPlayerMP player) throws IOException {
PlayerData playerData = PlayerDataController.Instance.getPlayerData(player);
- NBTTagCompound compound = Server.readNBT(buffer);
+ NBTTagCompound compound = ByteBufUtils.readNBT(buffer);
HashMap questAlerts = NBTTags.getStringStringMap(compound.getTagList("Alerts", 10));
for (Map.Entry entry : questAlerts.entrySet()) {
Quest quest = getQuestFromStringKey(entry.getKey());
@@ -315,7 +320,7 @@ public class NoppesUtilPlayer {
}
}
- String trackedQuestString = Server.readString(buffer);
+ String trackedQuestString = ByteBufUtils.readString(buffer);
Quest trackedQuest = getQuestFromStringKey(trackedQuestString);
if (trackedQuest != null) {
playerData.questData.trackQuest(trackedQuest);
@@ -332,7 +337,7 @@ public class NoppesUtilPlayer {
public static void updatePartyQuestLogData(ByteBuf buffer, EntityPlayerMP player) throws IOException {
PlayerData playerData = PlayerDataController.Instance.getPlayerData(player);
- String trackedQuestString = Server.readString(buffer);
+ String trackedQuestString = ByteBufUtils.readString(buffer);
Quest trackedQuest = getQuestFromStringKey(trackedQuestString);
if (trackedQuest != null) {
playerData.questData.trackParty(playerData.getPlayerParty());
@@ -388,7 +393,7 @@ public class NoppesUtilPlayer {
}
compound.setTag("ObjectiveList",nbtTagList);
- Server.sendData(player, EnumPacketClient.OVERLAY_QUEST_TRACKING, compound);
+ PacketHandler.Instance.sendToPlayer(new OverlayQuestTrackingPacket(compound), player);
}
}
@@ -411,8 +416,7 @@ public class NoppesUtilPlayer {
nbtTagList.appendTag(new NBTTagString(objective.getAdditionalText()));
}
compound.setTag("ObjectiveList",nbtTagList);
-
- Server.sendData(player, EnumPacketClient.OVERLAY_QUEST_TRACKING, compound);
+ PacketHandler.Instance.sendToPlayer(new OverlayQuestTrackingPacket(compound), player);
}
}
@@ -428,7 +432,8 @@ public class NoppesUtilPlayer {
public static void sendTrackedQuest(EntityPlayerMP player) {
QuestLogData data = new QuestLogData();
data.setTrackedQuestKey(player);
- Server.sendData(player, EnumPacketClient.PARTY_DATA, data.writeTrackedQuest());
+
+ PacketUtil.sendPartyData(player, data.writeTrackedQuest());
}
public static boolean questCompletion(EntityPlayerMP player, int questId) {
@@ -744,7 +749,7 @@ public class NoppesUtilPlayer {
}
}
public static void isGUIOpen(EntityPlayerMP player){
- Server.sendData(player, EnumPacketClient.ISGUIOPEN);
+ PacketHandler.Instance.sendToPlayer(new IsGuiOpenPacket(), player);
}
public static List countStacks(IInventory inv, boolean ignoreDamage, boolean ignoreNBT) {
diff --git a/src/main/java/noppes/npcs/PacketHandlerPlayer.java b/src/main/java/noppes/npcs/PacketHandlerPlayer.java
index ae44217e8..95d2d05d3 100644
--- a/src/main/java/noppes/npcs/PacketHandlerPlayer.java
+++ b/src/main/java/noppes/npcs/PacketHandlerPlayer.java
@@ -4,6 +4,7 @@ import cpw.mods.fml.common.eventhandler.SubscribeEvent;
import cpw.mods.fml.common.network.FMLNetworkEvent.ServerCustomPacketEvent;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.PacketUtil;
+import kamkeel.npcs.util.ByteBufUtils;
import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.init.Items;
@@ -45,7 +46,7 @@ public class PacketHandlerPlayer{
private void player(ByteBuf buffer, EntityPlayerMP player, EnumPlayerPacket type) throws IOException {
if(type == EnumPlayerPacket.MarkData){
- String uuid = Server.readString(buffer);
+ String uuid = ByteBufUtils.readString(buffer);
if(uuid == null)
return;
@@ -85,7 +86,7 @@ public class PacketHandlerPlayer{
boolean isMetaPressed = buffer.readBoolean();
boolean buttonDown = buffer.readBoolean();
- String ints = Server.readString(buffer);
+ String ints = ByteBufUtils.readString(buffer);
String[] split = ints.split(",");
int[] keysDown;
@@ -118,7 +119,7 @@ public class PacketHandlerPlayer{
boolean isAltPressed = buffer.readBoolean();
boolean isMetaPressed = buffer.readBoolean();
- String ints = Server.readString(buffer);
+ String ints = ByteBufUtils.readString(buffer);
String[] split = ints.split(",");
int[] keysDown;
@@ -167,7 +168,7 @@ public class PacketHandlerPlayer{
EntityNPCInterface npc = NoppesUtilServer.getEditingNpc(player);
if(npc == null || npc.advanced.role != EnumRoleType.Transporter)
return;
- NoppesUtilPlayer.transport(player, npc, Server.readString(buffer));
+ NoppesUtilPlayer.transport(player, npc, ByteBufUtils.readString(buffer));
}
else if(type == EnumPlayerPacket.BankUpgrade){
EntityNPCInterface npc = NoppesUtilServer.getEditingNpc(player);
@@ -221,7 +222,7 @@ public class PacketHandlerPlayer{
}
else if(type == EnumPlayerPacket.MailDelete){
long time = buffer.readLong();
- String username = Server.readString(buffer);
+ String username = ByteBufUtils.readString(buffer);
PlayerMailData data = PlayerDataController.Instance.getPlayerData(player).mailData;
Iterator it = data.playermail.iterator();
@@ -236,7 +237,7 @@ public class PacketHandlerPlayer{
else if(type == EnumPlayerPacket.MailSend){
if(!(player.openContainer instanceof ContainerMail))
return;
- String username = PlayerDataController.Instance.hasPlayer(Server.readString(buffer));
+ String username = PlayerDataController.Instance.hasPlayer(ByteBufUtils.readString(buffer));
if(username.isEmpty()){
NoppesUtilServer.sendGuiError(player, 0);
return;
@@ -247,7 +248,7 @@ public class PacketHandlerPlayer{
String s = player.getDisplayName();
if(!s.equals(player.getCommandSenderName()))
s += "(" + player.getCommandSenderName() + ")";
- mail.readNBT(Server.readNBT(buffer));
+ mail.readNBT(ByteBufUtils.readNBT(buffer));
mail.sender = s;
mail.items = ((ContainerMail)player.openContainer).mail.items;
@@ -263,7 +264,7 @@ public class PacketHandlerPlayer{
}
else if(type == EnumPlayerPacket.MailboxOpenMail){
long time = buffer.readLong();
- String username = Server.readString(buffer);
+ String username = ByteBufUtils.readString(buffer);
player.closeContainer();
PlayerMailData data = PlayerDataController.Instance.getPlayerData(player).mailData;
@@ -279,7 +280,7 @@ public class PacketHandlerPlayer{
}
else if(type == EnumPlayerPacket.MailRead){
long time = buffer.readLong();
- String username = Server.readString(buffer);
+ String username = ByteBufUtils.readString(buffer);
PlayerMailData data = PlayerDataController.Instance.getPlayerData(player).mailData;
Iterator it = data.playermail.iterator();
@@ -300,7 +301,7 @@ public class PacketHandlerPlayer{
return;
TileBigSign sign = (TileBigSign) tile;
if (sign.canEdit) {
- sign.setText(Server.readString(buffer));
+ sign.setText(ByteBufUtils.readString(buffer));
sign.canEdit = false;
player.worldObj.markBlockForUpdate(x, y, z);
}
@@ -316,7 +317,7 @@ public class PacketHandlerPlayer{
if (tile.book.getItem() == Items.written_book)
return;
boolean sign = buffer.readBoolean();
- ItemStack book = ItemStack.loadItemStackFromNBT(Server.readNBT(buffer));
+ ItemStack book = ItemStack.loadItemStackFromNBT(ByteBufUtils.readNBT(buffer));
if (book == null)
return;
if (book.getItem() == Items.writable_book && !sign && ItemWritableBook.func_150930_a(book.getTagCompound())) {
diff --git a/src/main/java/noppes/npcs/PacketHandlerServer.java b/src/main/java/noppes/npcs/PacketHandlerServer.java
index 8151c2149..8419eb7e4 100644
--- a/src/main/java/noppes/npcs/PacketHandlerServer.java
+++ b/src/main/java/noppes/npcs/PacketHandlerServer.java
@@ -7,6 +7,7 @@ import cpw.mods.fml.relauncher.Side;
import foxz.utils.Market;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.PacketUtil;
+import kamkeel.npcs.util.ByteBufUtils;
import net.minecraft.entity.Entity;
import net.minecraft.entity.EntityList;
import net.minecraft.entity.passive.EntityVillager;
@@ -74,19 +75,19 @@ public class PacketHandlerServer{
isGuiOpenPacket(buffer, player);
return;
} else if (type == EnumPacketServer.CustomGuiButton && player.openContainer instanceof ContainerCustomGui) {
- ((ContainerCustomGui) player.openContainer).customGui.fromNBT(Server.readNBT(buffer));
+ ((ContainerCustomGui) player.openContainer).customGui.fromNBT(ByteBufUtils.readNBT(buffer));
EventHooks.onCustomGuiButton((IPlayer) NpcAPI.Instance().getIEntity(player), ((ContainerCustomGui) player.openContainer).customGui, buffer.readInt());
return;
} else if (type == EnumPacketServer.CustomGuiUnfocused && player.openContainer instanceof ContainerCustomGui) {
- ((ContainerCustomGui) player.openContainer).customGui.fromNBT(Server.readNBT(buffer));
+ ((ContainerCustomGui) player.openContainer).customGui.fromNBT(ByteBufUtils.readNBT(buffer));
EventHooks.onCustomGuiUnfocused((IPlayer) NpcAPI.Instance().getIEntity(player), ((ContainerCustomGui) player.openContainer).customGui, buffer.readInt());
return;
} else if (type == EnumPacketServer.CustomGuiScrollClick && player.openContainer instanceof ContainerCustomGui) {
- ((ContainerCustomGui) player.openContainer).customGui.fromNBT(Server.readNBT(buffer));
+ ((ContainerCustomGui) player.openContainer).customGui.fromNBT(ByteBufUtils.readNBT(buffer));
EventHooks.onCustomGuiScrollClick((IPlayer) NpcAPI.Instance().getIEntity(player), ((ContainerCustomGui) player.openContainer).customGui, buffer.readInt(), buffer.readInt(), CustomGuiController.readScrollSelection(buffer), buffer.readBoolean());
return;
} else if (type == EnumPacketServer.CustomGuiClose) {
- EventHooks.onCustomGuiClose((IPlayer) NpcAPI.Instance().getIEntity(player), (new ScriptGui()).fromNBT(Server.readNBT(buffer)));
+ EventHooks.onCustomGuiClose((IPlayer) NpcAPI.Instance().getIEntity(player), (new ScriptGui()).fromNBT(ByteBufUtils.readNBT(buffer)));
return;
} else if (type == EnumPacketServer.QuestLogToServer) {
NoppesUtilPlayer.updateQuestLogData(buffer, player);
@@ -137,9 +138,9 @@ public class PacketHandlerServer{
}
NBTTagCompound compound = new NBTTagCompound();
compound.setBoolean("Disband", true);
- Server.sendData(player, EnumPacketClient.PARTY_DATA, compound);
+ PacketUtil.sendPartyData(player, compound);
} else if (type == EnumPacketServer.KickPlayer) {
- String kickPlayerName = Server.readString(buffer);
+ String kickPlayerName = ByteBufUtils.readString(buffer);
EntityPlayer kickPlayer = NoppesUtilServer.getPlayerByName(kickPlayerName);
PlayerData playerData = null;
UUID playerUUID = null;
@@ -176,7 +177,7 @@ public class PacketHandlerServer{
}
}
} else if (type == EnumPacketServer.LeavePlayer) {
- EntityPlayer leavingPlayer = NoppesUtilServer.getPlayerByName(Server.readString(buffer));
+ EntityPlayer leavingPlayer = NoppesUtilServer.getPlayerByName(ByteBufUtils.readString(buffer));
if (leavingPlayer != null) {
PlayerData playerData = PlayerDataController.Instance.getPlayerData(player);
if (playerData.partyUUID != null) {
@@ -195,19 +196,19 @@ public class PacketHandlerServer{
PlayerData playerData = PlayerDataController.Instance.getPlayerData(player);
if (playerData.partyUUID != null) {
Party party = PartyController.Instance().getParty(playerData.partyUUID);
- party.readClientNBT(Server.readNBT(buffer));
+ party.readClientNBT(ByteBufUtils.readNBT(buffer));
}
} else if (type == EnumPacketServer.SetPartyLeader) {
PlayerData playerData = PlayerDataController.Instance.getPlayerData(player);
if (playerData.partyUUID != null) {
Party party = PartyController.Instance().getParty(playerData.partyUUID);
if (!party.getIsLocked()) {
- party.setLeader(NoppesUtilServer.getPlayerByName(Server.readString(buffer)));
+ party.setLeader(NoppesUtilServer.getPlayerByName(ByteBufUtils.readString(buffer)));
PartyController.Instance().pingPartyUpdate(party);
}
}
} else if (type == EnumPacketServer.PartyInvite) {
- EntityPlayer invitedPlayer = NoppesUtilServer.getPlayerByName(Server.readString(buffer));
+ EntityPlayer invitedPlayer = NoppesUtilServer.getPlayerByName(ByteBufUtils.readString(buffer));
if (invitedPlayer != null) {
PlayerData senderData = PlayerDataController.Instance.getPlayerData(player);
PlayerData invitedData = PlayerDataController.Instance.getPlayerData(invitedPlayer);
@@ -227,14 +228,14 @@ public class PacketHandlerServer{
sendInviteData(player);
} else if (type == EnumPacketServer.AcceptInvite) {
PlayerData playerData = PlayerDataController.Instance.getPlayerData(player);
- String uuidString = Server.readString(buffer);
+ String uuidString = ByteBufUtils.readString(buffer);
if (uuidString != null) {
UUID uuid = UUID.fromString(uuidString);
playerData.acceptInvite(uuid);
}
} else if (type == EnumPacketServer.IgnoreInvite) {
PlayerData playerData = PlayerDataController.Instance.getPlayerData(player);
- String uuidString = Server.readString(buffer);
+ String uuidString = ByteBufUtils.readString(buffer);
if (uuidString != null) {
UUID uuid = UUID.fromString(uuidString);
playerData.ignoreInvite(uuid);
@@ -337,8 +338,8 @@ public class PacketHandlerServer{
compound.setString("QuestCompleteWith", quest.completerNpc);
}
}
- Server.sendData(player, EnumPacketClient.PARTY_DATA, compound);
- } else {
+ PacketUtil.sendPartyData(player, compound);
+ } else {
sendInviteData(player);
}
}
@@ -357,8 +358,8 @@ public class PacketHandlerServer{
list.appendTag(partyCompound);
}
compound.setTag("PartyInvites", list);
- Server.sendData(player, EnumPacketClient.PARTY_DATA, compound);
- }
+ PacketUtil.sendPartyData(player, compound);
+ }
}
private void isGuiOpenPacket(ByteBuf buffer, EntityPlayerMP player) throws IOException {
@@ -375,7 +376,7 @@ public class PacketHandlerServer{
PacketUtil.sendGuiData(player, compound);
}
else if (type == EnumPacketServer.ScriptGlobalGuiDataSave) {
- NBTTagCompound compound = Server.readNBT(buffer);
+ NBTTagCompound compound = ByteBufUtils.readNBT(buffer);
ConfigScript.ScriptingEnabled = compound.getBoolean("ScriptsEnabled");
ConfigScript.GlobalPlayerScripts = compound.getBoolean("PlayerScriptsEnabled");
ConfigScript.GlobalNPCScripts = compound.getBoolean("GlobalNPCScriptsEnabled");
@@ -385,7 +386,7 @@ public class PacketHandlerServer{
private void scriptPackets(EnumPacketServer type, ByteBuf buffer, EntityPlayerMP player, EntityNPCInterface npc) throws Exception {
if(type == EnumPacketServer.ScriptDataSave){
- npc.script.readFromNBT(Server.readNBT(buffer));
+ npc.script.readFromNBT(ByteBufUtils.readNBT(buffer));
npc.updateAI = true;
npc.script.hasInited = false;
if(ConfigDebug.PlayerLogging && FMLCommonHandler.instance().getEffectiveSide() == Side.SERVER){
@@ -430,12 +431,12 @@ public class PacketHandlerServer{
} else while (data.getScripts().size() < totalScripts) {
data.getScripts().add(new ScriptContainer(data));
}
- NBTTagCompound tabCompound = Server.readNBT(buffer);
+ NBTTagCompound tabCompound = ByteBufUtils.readNBT(buffer);
ScriptContainer script = new ScriptContainer(data);
script.readFromNBT(tabCompound);
data.getScripts().set(tab,script);
} else {
- NBTTagCompound compound = Server.readNBT(buffer);
+ NBTTagCompound compound = ByteBufUtils.readNBT(buffer);
data.setLanguage(compound.getString("ScriptLanguage"));
if (!ScriptController.Instance.languages.containsKey(data.getLanguage())) {
if (!ScriptController.Instance.languages.isEmpty()) {
@@ -513,7 +514,7 @@ public class PacketHandlerServer{
return;
}
- NBTTagCompound compound = Server.readNBT(buffer);
+ NBTTagCompound compound = ByteBufUtils.readNBT(buffer);
ScriptCustomItem wrapper = (ScriptCustomItem) NpcAPI.Instance().getIItemStack(player.getHeldItem());
wrapper.setMCNbt(compound);
wrapper.saveScriptData();
@@ -539,7 +540,7 @@ public class PacketHandlerServer{
if(!(tile instanceof TileScripted))
return;
TileScripted script = (TileScripted) tile;
- script.setNBT(Server.readNBT(buffer));
+ script.setNBT(ByteBufUtils.readNBT(buffer));
script.lastInited = -1;
}
}
@@ -570,13 +571,13 @@ public class PacketHandlerServer{
PacketUtil.sendGuiData(player, npc.ai.writeToNBT(new NBTTagCompound()));
}
else if(type == EnumPacketServer.MovingPathSave){
- npc.ai.setMovingPath(NBTTags.getIntegerArraySet(Server.readNBT(buffer).getTagList("MovingPathNew",10)));
+ npc.ai.setMovingPath(NBTTags.getIntegerArraySet(ByteBufUtils.readNBT(buffer).getTagList("MovingPathNew",10)));
}
}
private void blockPackets(EnumPacketServer type, ByteBuf buffer, EntityPlayerMP player) throws IOException {
if (type == EnumPacketServer.SaveTileEntity) {
- NoppesUtilServer.saveTileEntity(player, Server.readNBT(buffer));
+ NoppesUtilServer.saveTileEntity(player, ByteBufUtils.readNBT(buffer));
}
else if(type == EnumPacketServer.GetTileEntity){
TileEntity tile = player.worldObj.getTileEntity(buffer.readInt(), buffer.readInt(), buffer.readInt());
@@ -667,7 +668,7 @@ public class PacketHandlerServer{
NoppesUtilServer.deleteNpc(npc,player);
}
else if(type == EnumPacketServer.LinkedAdd){
- LinkedNpcController.Instance.addData(Server.readString(buffer));
+ LinkedNpcController.Instance.addData(ByteBufUtils.readString(buffer));
List list = new ArrayList();
for(LinkedData data : LinkedNpcController.Instance.list)
@@ -675,7 +676,7 @@ public class PacketHandlerServer{
PacketUtil.sendList((EntityPlayerMP)player, list);
}
else if(type == EnumPacketServer.LinkedRemove){
- LinkedNpcController.Instance.removeData(Server.readString(buffer));
+ LinkedNpcController.Instance.removeData(ByteBufUtils.readString(buffer));
List list = new ArrayList();
for(LinkedData data : LinkedNpcController.Instance.list)
@@ -691,7 +692,7 @@ public class PacketHandlerServer{
PacketUtil.setSelectedList(player, npc.linkedName);
}
else if(type == EnumPacketServer.LinkedSet){
- npc.linkedName = Server.readString(buffer);
+ npc.linkedName = ByteBufUtils.readString(buffer);
LinkedNpcController.Instance.loadNpcData(npc);
}
else if(type == EnumPacketServer.NpcMenuClose){
@@ -712,7 +713,7 @@ public class PacketHandlerServer{
}
else if(type == EnumPacketServer.BankSave){
Bank bank = new Bank();
- bank.readEntityFromNBT(Server.readNBT(buffer));
+ bank.readEntityFromNBT(ByteBufUtils.readNBT(buffer));
BankController.getInstance().saveBank(bank);
NoppesUtilServer.sendBankDataAll(player);
NoppesUtilServer.sendBank(player,bank);
@@ -793,7 +794,7 @@ public class PacketHandlerServer{
NoppesUtilServer.setRecipeGui(player,new RecipeCarpentry(""));
}
else if(type == EnumPacketServer.RecipeSave){
- RecipeCarpentry recipe = RecipeController.Instance.saveRecipe(Server.readNBT(buffer));
+ RecipeCarpentry recipe = RecipeController.Instance.saveRecipe(ByteBufUtils.readNBT(buffer));
NoppesUtilServer.sendRecipeData(player, recipe.isGlobal?3:4);
NoppesUtilServer.setRecipeGui(player,recipe);
}
@@ -808,7 +809,7 @@ public class PacketHandlerServer{
}
else if(type == EnumPacketServer.NaturalSpawnSave){
SpawnData data = new SpawnData();
- data.readNBT(Server.readNBT(buffer));
+ data.readNBT(ByteBufUtils.readNBT(buffer));
SpawnController.Instance.saveSpawnData(data);
PacketUtil.sendScrollData(player, SpawnController.Instance.getScroll());
@@ -819,7 +820,7 @@ public class PacketHandlerServer{
}
else if(type == EnumPacketServer.DialogCategorySave){
DialogCategory category = new DialogCategory();
- category.readNBT(Server.readNBT(buffer));
+ category.readNBT(ByteBufUtils.readNBT(buffer));
DialogController.Instance.saveCategory(category);
PacketUtil.sendScrollData(player, DialogController.Instance.getScroll());
}
@@ -838,7 +839,7 @@ public class PacketHandlerServer{
else if(type == EnumPacketServer.DialogSave){
int category = buffer.readInt();
Dialog dialog = new Dialog();
- dialog.readNBT(Server.readNBT(buffer));
+ dialog.readNBT(ByteBufUtils.readNBT(buffer));
boolean sendGroup = buffer.readBoolean();
DialogController.Instance.saveDialog(category,dialog);
if(dialog.category != null){
@@ -853,7 +854,7 @@ public class PacketHandlerServer{
else if(type == EnumPacketServer.QuestOpenGui){
Quest quest = new Quest();
int gui = buffer.readInt();
- quest.readNBT(Server.readNBT(buffer));
+ quest.readNBT(ByteBufUtils.readNBT(buffer));
NoppesUtilServer.setEditingQuest(player,quest);
player.openGui(CustomNpcs.instance, gui , player.worldObj, 0, 0, 0);
}
@@ -897,7 +898,7 @@ public class PacketHandlerServer{
}
else if(type == EnumPacketServer.QuestCategorySave){
QuestCategory category = new QuestCategory();
- category.readNBT(Server.readNBT(buffer));
+ category.readNBT(ByteBufUtils.readNBT(buffer));
QuestController.Instance.saveCategory(category);
NoppesUtilServer.sendQuestCategoryData(player);
}
@@ -908,7 +909,7 @@ public class PacketHandlerServer{
else if(type == EnumPacketServer.QuestSave){
int category = buffer.readInt();
Quest quest = new Quest();
- quest.readNBT(Server.readNBT(buffer));
+ quest.readNBT(ByteBufUtils.readNBT(buffer));
boolean sendGroup = buffer.readBoolean();
QuestController.Instance.saveQuest(category, quest);
if(quest.category != null){
@@ -950,7 +951,7 @@ public class PacketHandlerServer{
NoppesUtilServer.sendTransportCategoryData(player);
}
else if(type == EnumPacketServer.TransportCategorySave){
- TransportController.getInstance().saveCategory(Server.readString(buffer), buffer.readInt());
+ TransportController.getInstance().saveCategory(ByteBufUtils.readString(buffer), buffer.readInt());
}
else if(type == EnumPacketServer.TransportCategoryRemove){
TransportController.getInstance().removeCategory(buffer.readInt());
@@ -967,7 +968,7 @@ public class PacketHandlerServer{
}
else if(type == EnumPacketServer.TransportSave){
int cat = buffer.readInt();
- TransportLocation location = TransportController.getInstance().saveLocation(cat,Server.readNBT(buffer), npc);
+ TransportLocation location = TransportController.getInstance().saveLocation(cat, ByteBufUtils.readNBT(buffer), npc);
if(location != null){
if(npc.advanced.role != EnumRoleType.Transporter)
return;
@@ -989,7 +990,7 @@ public class PacketHandlerServer{
}
else if(type == EnumPacketServer.FactionSave){
Faction faction = new Faction();
- faction.readNBT(Server.readNBT(buffer));
+ faction.readNBT(ByteBufUtils.readNBT(buffer));
FactionController.getInstance().saveFaction(faction);
NoppesUtilServer.sendFactionDataAll(player);
NBTTagCompound compound = new NBTTagCompound();
@@ -1008,7 +1009,7 @@ public class PacketHandlerServer{
}
else if(type == EnumPacketServer.TagSave){
Tag tag = new Tag();
- tag.readNBT(Server.readNBT(buffer));
+ tag.readNBT(ByteBufUtils.readNBT(buffer));
TagController.getInstance().saveTag(tag);
NoppesUtilServer.sendTagDataAll(player);
NBTTagCompound compound = new NBTTagCompound();
@@ -1029,7 +1030,7 @@ public class PacketHandlerServer{
String name = null;
EnumPlayerData datatype = EnumPlayerData.values()[id];
if(datatype != EnumPlayerData.Players)
- name = Server.readString(buffer);
+ name = ByteBufUtils.readString(buffer);
NoppesUtilServer.sendPlayerData(datatype,player,name);
}
else if(type == EnumPacketServer.PlayerDataRemove){
@@ -1042,21 +1043,21 @@ public class PacketHandlerServer{
PacketUtil.sendGuiData(player, npc.display.writeToNBT(new NBTTagCompound()));
}
else if(type == EnumPacketServer.MainmenuDisplaySave){
- npc.display.readToNBT(Server.readNBT(buffer));
+ npc.display.readToNBT(ByteBufUtils.readNBT(buffer));
npc.updateClient = true;
}
else if(type == EnumPacketServer.MainmenuStatsGet){
PacketUtil.sendGuiData(player, npc.stats.writeToNBT(new NBTTagCompound()));
}
else if(type == EnumPacketServer.MainmenuStatsSave){
- npc.stats.readToNBT(Server.readNBT(buffer));
+ npc.stats.readToNBT(ByteBufUtils.readNBT(buffer));
npc.updateClient = true;
}
else if(type == EnumPacketServer.MainmenuInvGet){
PacketUtil.sendGuiData(player, npc.inventory.writeEntityToNBT(new NBTTagCompound()));
}
else if(type == EnumPacketServer.MainmenuInvSave){
- npc.inventory.readEntityFromNBT(Server.readNBT(buffer));
+ npc.inventory.readEntityFromNBT(ByteBufUtils.readNBT(buffer));
npc.updateAI = true;
npc.updateClient = true;
}
@@ -1064,7 +1065,7 @@ public class PacketHandlerServer{
PacketUtil.sendGuiData(player, npc.ai.writeToNBT(new NBTTagCompound()));
}
else if(type == EnumPacketServer.MainmenuAISave){
- npc.ai.readToNBT(Server.readNBT(buffer));
+ npc.ai.readToNBT(ByteBufUtils.readNBT(buffer));
npc.setHealth(npc.getMaxHealth());
npc.updateAI = true;
npc.updateClient = true;
@@ -1073,18 +1074,18 @@ public class PacketHandlerServer{
PacketUtil.sendGuiData(player, npc.advanced.writeToNBT(new NBTTagCompound()));
}
else if(type == EnumPacketServer.MainmenuAdvancedSave){
- npc.advanced.readToNBT(Server.readNBT(buffer));
+ npc.advanced.readToNBT(ByteBufUtils.readNBT(buffer));
npc.updateAI = true;
npc.updateClient = true;
}
else if(type == EnumPacketServer.MainmenuAdvancedMarkData){
MarkData data = MarkData.get(npc);
- data.setNBT(Server.readNBT(buffer));
+ data.setNBT(ByteBufUtils.readNBT(buffer));
data.syncClients();
}
else if(type == EnumPacketServer.JobSave){
NBTTagCompound original = npc.jobInterface.writeToNBT(new NBTTagCompound());
- NBTTagCompound compound = Server.readNBT(buffer);
+ NBTTagCompound compound = ByteBufUtils.readNBT(buffer);
Set names = compound.func_150296_c();
for(String name : names)
original.setTag(name, compound.getTag(name));
@@ -1111,12 +1112,12 @@ public class PacketHandlerServer{
return;
JobSpawner job = (JobSpawner) npc.jobInterface;
if(buffer.readBoolean()){
- NBTTagCompound compound = ServerCloneController.Instance.getCloneData(null, Server.readString(buffer), buffer.readInt());
+ NBTTagCompound compound = ServerCloneController.Instance.getCloneData(null, ByteBufUtils.readString(buffer), buffer.readInt());
job.setJobCompound(buffer.readInt(), compound);
}
else{
- job.setJobCompound(buffer.readInt(), Server.readNBT(buffer));
+ job.setJobCompound(buffer.readInt(), ByteBufUtils.readNBT(buffer));
}
PacketUtil.sendGuiData(player, job.getTitles());
}
@@ -1134,7 +1135,7 @@ public class PacketHandlerServer{
PacketUtil.sendGuiData(player, job.getTitles());
}
else if(type == EnumPacketServer.RoleSave){
- npc.roleInterface.readFromNBT(Server.readNBT(buffer));
+ npc.roleInterface.readFromNBT(ByteBufUtils.readNBT(buffer));
npc.updateClient = true;
}
else if(type == EnumPacketServer.RoleGet){
@@ -1153,17 +1154,17 @@ public class PacketHandlerServer{
}
else if(type == EnumPacketServer.ModelDataSave){
if(npc instanceof EntityCustomNpc)
- ((EntityCustomNpc)npc).modelData.readFromNBT(Server.readNBT(buffer));
+ ((EntityCustomNpc)npc).modelData.readFromNBT(ByteBufUtils.readNBT(buffer));
}
else if(type == EnumPacketServer.MailOpenSetup){
PlayerMail mail = new PlayerMail();
- mail.readNBT(Server.readNBT(buffer));
+ mail.readNBT(ByteBufUtils.readNBT(buffer));
ContainerMail.staticmail = mail;
player.openGui(CustomNpcs.instance, EnumGuiType.PlayerMailman.ordinal(), player.worldObj, 1, 0, 0);
}
else if(type == EnumPacketServer.TransformSave){
boolean isValid = npc.transform.isValid();
- npc.transform.readOptions(Server.readNBT(buffer));
+ npc.transform.readOptions(ByteBufUtils.readNBT(buffer));
if(isValid != npc.transform.isValid())
npc.updateAI = true;
}
@@ -1175,7 +1176,7 @@ public class PacketHandlerServer{
npc.transform.transform(buffer.readBoolean());
}
else if(type == EnumPacketServer.TraderMarketSave){
- String market = Server.readString(buffer);
+ String market = ByteBufUtils.readString(buffer);
if(market == null)
return;
boolean bo = buffer.readBoolean();
@@ -1202,7 +1203,7 @@ public class PacketHandlerServer{
}
else if(type == EnumPacketServer.AnimationSave){
Animation animation = new Animation();
- animation.readFromNBT(Server.readNBT(buffer));
+ animation.readFromNBT(ByteBufUtils.readNBT(buffer));
AnimationController.getInstance().saveAnimation(animation);
NoppesUtilServer.sendAnimationDataAll(player);
PacketUtil.sendGuiData(player, animation.writeToNBT());
@@ -1213,7 +1214,7 @@ public class PacketHandlerServer{
}
private void mountPackets(EnumPacketServer type, ByteBuf buffer, EntityPlayerMP player) throws IOException{
if(type == EnumPacketServer.SpawnRider){
- Entity entity = EntityList.createEntityFromNBT(Server.readNBT(buffer), player.worldObj);
+ Entity entity = EntityList.createEntityFromNBT(ByteBufUtils.readNBT(buffer), player.worldObj);
player.worldObj.spawnEntityInWorld(entity);
entity.mountEntity(ServerEventsHandler.mounted);
}
@@ -1248,9 +1249,9 @@ public class PacketHandlerServer{
int z = buffer.readInt();
NBTTagCompound compound;
if(server)
- compound = ServerCloneController.Instance.getCloneData(player, Server.readString(buffer), buffer.readInt());
+ compound = ServerCloneController.Instance.getCloneData(player, ByteBufUtils.readString(buffer), buffer.readInt());
else
- compound = Server.readNBT(buffer);
+ compound = ByteBufUtils.readNBT(buffer);
if(compound == null)
return;
Entity entity = NoppesUtilServer.spawnClone(compound, x, y, z, player.worldObj);
@@ -1275,9 +1276,9 @@ public class PacketHandlerServer{
int z = buffer.readInt();
NBTTagCompound compound;
if(server)
- compound = ServerCloneController.Instance.getCloneData(player, Server.readString(buffer), buffer.readInt());
+ compound = ServerCloneController.Instance.getCloneData(player, ByteBufUtils.readString(buffer), buffer.readInt());
else
- compound = Server.readNBT(buffer);
+ compound = ByteBufUtils.readNBT(buffer);
if (!ConfigScript.canScript(player, CustomNpcsPermissions.SCRIPT)) {
return;
@@ -1287,7 +1288,7 @@ public class PacketHandlerServer{
NoppesUtilServer.createMobSpawner(x, y, z, compound, player);
}
else if(type == EnumPacketServer.ClonePreSave){
- boolean bo = ServerCloneController.Instance.getCloneData(null, Server.readString(buffer), buffer.readInt()) != null;
+ boolean bo = ServerCloneController.Instance.getCloneData(null, ByteBufUtils.readString(buffer), buffer.readInt()) != null;
NBTTagCompound compound = new NBTTagCompound();
compound.setBoolean("NameExists", bo);
PacketUtil.sendGuiData(player, compound);
@@ -1296,10 +1297,10 @@ public class PacketHandlerServer{
PlayerData data = PlayerDataController.Instance.getPlayerData(player);
if(data.cloned == null)
return;
- String name = Server.readString(buffer);
+ String name = ByteBufUtils.readString(buffer);
int tab = buffer.readInt();
- NBTTagCompound tagExtra = Server.readNBT(buffer);
- NBTTagCompound tagCompound = Server.readNBT(buffer);
+ NBTTagCompound tagExtra = ByteBufUtils.readNBT(buffer);
+ NBTTagCompound tagCompound = ByteBufUtils.readNBT(buffer);
NBTTagList tagList = tagCompound.getTagList("TagUUIDs", 8);
data.cloned.setTag("TagUUIDs", tagList);
@@ -1307,7 +1308,7 @@ public class PacketHandlerServer{
}
else if(type == EnumPacketServer.CloneRemove){
int tab = buffer.readInt();
- ServerCloneController.Instance.removeClone(Server.readString(buffer), tab);
+ ServerCloneController.Instance.removeClone(ByteBufUtils.readString(buffer), tab);
NBTTagList list = new NBTTagList();
@@ -1382,7 +1383,7 @@ public class PacketHandlerServer{
private void setTags(EntityNPCInterface npc, ByteBuf buffer) throws IOException {
npc.advanced.tagUUIDs.removeIf(uuid -> TagController.getInstance().getTagFromUUID(uuid) != null);
- NBTTagCompound compound = Server.readNBT(buffer);
+ NBTTagCompound compound = ByteBufUtils.readNBT(buffer);
NBTTagList list = compound.getTagList("TagNames",8);
for (int i = 0; i < list.tagCount(); i++) {
String tagName = list.getStringTagAt(i);
diff --git a/src/main/java/noppes/npcs/Server.java b/src/main/java/noppes/npcs/Server.java
index 317448523..ff7f73b0c 100644
--- a/src/main/java/noppes/npcs/Server.java
+++ b/src/main/java/noppes/npcs/Server.java
@@ -1,18 +1,10 @@
package noppes.npcs;
-import com.google.common.base.Charsets;
-import cpw.mods.fml.common.network.NetworkRegistry.TargetPoint;
-import cpw.mods.fml.common.network.internal.FMLProxyPacket;
import io.netty.buffer.ByteBuf;
-import io.netty.buffer.Unpooled;
-import net.minecraft.entity.Entity;
-import net.minecraft.entity.player.EntityPlayerMP;
-import net.minecraft.nbt.CompressedStreamTools;
-import net.minecraft.nbt.NBTSizeTracker;
+import kamkeel.npcs.util.ByteBufUtils;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.network.PacketBuffer;
import net.minecraft.village.MerchantRecipeList;
-import noppes.npcs.constants.EnumPacketClient;
import java.io.IOException;
import java.util.Arrays;
@@ -20,47 +12,6 @@ import java.util.List;
import java.util.Map;
public class Server {
-
- public static void sendData(final EntityPlayerMP player, final EnumPacketClient enu, final Object... obs) {
- sendDataChecked(player, enu, obs);
- }
-
- public static boolean sendDataChecked(EntityPlayerMP player, EnumPacketClient type, Object... obs) {
- PacketBuffer buffer = new PacketBuffer(Unpooled.buffer());
- try {
- if(!fillBuffer(buffer, type, obs))
- return false;
- CustomNpcs.Channel.sendTo(new FMLProxyPacket(buffer, "CustomNPCs"), player);
- } catch (IOException e) {
- LogWriter.error(type + " Errored", e);
- }
- return true;
- }
-
- public static void sendAssociatedData(final Entity entity, final EnumPacketClient enu, final Object... obs) {
- ByteBuf buffer = Unpooled.buffer();
- try {
- if(!fillBuffer(buffer, enu, obs))
- return;
- TargetPoint point = new TargetPoint(entity.dimension, entity.posX, entity.posY, entity.posZ, 60);
- CustomNpcs.Channel.sendToAllAround(new FMLProxyPacket(buffer,"CustomNPCs"), point);
- } catch (IOException e) {
- e.printStackTrace();
- LogWriter.error(enu + " Errored", e);
- }
- }
- public static void sendToAll(EnumPacketClient enu, Object... obs) {
- ByteBuf buffer = Unpooled.buffer();
- try {
- if(!fillBuffer(buffer, enu, obs))
- return;
- CustomNpcs.Channel.sendToAll(new FMLProxyPacket(buffer,"CustomNPCs"));
- } catch (IOException e) {
- e.printStackTrace();
- LogWriter.error(enu + " Errored", e);
- }
- }
-
public static boolean fillBuffer(ByteBuf buffer, Enum enu, Object... obs) throws IOException{
buffer.writeInt(enu.ordinal());
for(Object ob : obs){
@@ -73,7 +24,7 @@ public class Server {
for(String key : map.keySet()){
int value = map.get(key);
buffer.writeInt(value);
- writeString(buffer, key);
+ ByteBufUtils.writeString(buffer, key);
}
}
else if(ob instanceof MerchantRecipeList)
@@ -82,7 +33,7 @@ public class Server {
List list = (List) ob;
buffer.writeInt(list.size());
for(String s : list)
- writeString(buffer, s);
+ ByteBufUtils.writeString(buffer, s);
}
else if(ob instanceof Enum)
buffer.writeInt(((Enum>) ob).ordinal());
@@ -91,7 +42,7 @@ public class Server {
else if(ob instanceof Boolean)
buffer.writeBoolean((Boolean) ob);
else if(ob instanceof String)
- writeString(buffer, (String) ob);
+ ByteBufUtils.writeString(buffer, (String) ob);
else if(ob instanceof Float)
buffer.writeFloat((Float) ob);
else if(ob instanceof Long)
@@ -105,7 +56,7 @@ public class Server {
buffer.writeBytes(byteArray);
}
else if(ob instanceof NBTTagCompound)
- writeNBT(buffer, (NBTTagCompound) ob);
+ ByteBufUtils.writeNBT(buffer, (NBTTagCompound) ob);
}
if(buffer.array().length >= 32767){
LogWriter.error("Packet " + enu + " was too big to be send");
@@ -114,33 +65,4 @@ public class Server {
}
return true;
}
-
- public static void writeNBT(ByteBuf buffer, NBTTagCompound compound) throws IOException {
- byte[] bytes = CompressedStreamTools.compress(compound);
- buffer.writeShort((short)bytes.length);
- buffer.writeBytes(bytes);
- }
-
- public static NBTTagCompound readNBT(ByteBuf buffer) throws IOException {
- byte[] bytes = new byte[buffer.readShort()];
- buffer.readBytes(bytes);
- return CompressedStreamTools.func_152457_a(bytes, new NBTSizeTracker(2097152L));
- }
-
- public static void writeString(ByteBuf buffer, String s){
- byte[] bytes = s.getBytes(Charsets.UTF_8);
- buffer.writeShort((short)bytes.length);
- buffer.writeBytes(bytes);
- }
-
- public static String readString(ByteBuf buffer){
- try{
- byte[] bytes = new byte[buffer.readShort()];
- buffer.readBytes(bytes);
- return new String(bytes, Charsets.UTF_8);
- }
- catch(IndexOutOfBoundsException ex){
- return null;
- }
- }
}
diff --git a/src/main/java/noppes/npcs/ServerEventsHandler.java b/src/main/java/noppes/npcs/ServerEventsHandler.java
index 364f5f87c..c9e933f70 100644
--- a/src/main/java/noppes/npcs/ServerEventsHandler.java
+++ b/src/main/java/noppes/npcs/ServerEventsHandler.java
@@ -9,6 +9,7 @@ import kamkeel.npcs.network.PacketUtil;
import kamkeel.npcs.network.enums.EnumSoundOperation;
import kamkeel.npcs.network.enums.EnumSyncAction;
import kamkeel.npcs.network.enums.EnumSyncType;
+import kamkeel.npcs.network.packets.client.MarkDataPacket;
import kamkeel.npcs.network.packets.client.SoundManagementPacket;
import kamkeel.npcs.network.packets.client.VillagerListPacket;
import kamkeel.npcs.network.packets.client.large.LargeClonerPacket;
@@ -486,6 +487,7 @@ public class ServerEventsHandler {
MarkData data = MarkData.get((EntityNPCInterface) event.target);
if(data.marks.isEmpty())
return;
- Server.sendData((EntityPlayerMP)event.entityPlayer, EnumPacketClient.MARK_DATA, event.target.getEntityId(), data.getNBT());
+
+ PacketHandler.Instance.sendToPlayer(new MarkDataPacket(event.target.getEntityId(), data.getNBT()), (EntityPlayerMP)event.entityPlayer);
}
}
diff --git a/src/main/java/noppes/npcs/client/NoppesUtil.java b/src/main/java/noppes/npcs/client/NoppesUtil.java
index b0df591f8..156d8b97d 100644
--- a/src/main/java/noppes/npcs/client/NoppesUtil.java
+++ b/src/main/java/noppes/npcs/client/NoppesUtil.java
@@ -1,6 +1,7 @@
package noppes.npcs.client;
import io.netty.buffer.ByteBuf;
+import kamkeel.npcs.util.ByteBufUtils;
import net.minecraft.client.Minecraft;
import net.minecraft.client.audio.PositionedSoundRecord;
import net.minecraft.client.gui.GuiScreen;
@@ -11,7 +12,6 @@ import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.ResourceLocation;
import net.minecraft.util.Util;
import noppes.npcs.CustomNpcs;
-import noppes.npcs.Server;
import noppes.npcs.client.gui.player.GuiDialogInteract;
import noppes.npcs.client.gui.player.GuiQuestCompletion;
import noppes.npcs.client.gui.util.GuiContainerNPCInterface;
@@ -141,7 +141,7 @@ public class NoppesUtil {
try {
int size = buffer.readInt();
for(int i = 0; i < size; i++){
- data.add(Server.readString(buffer));
+ data.add(ByteBufUtils.readString(buffer));
}
} catch (Exception e) {
@@ -158,7 +158,7 @@ public class NoppesUtil {
int size = buffer.readInt();
for(int i = 0; i < size; i++){
int id = buffer.readInt();
- String name = Server.readString(buffer);
+ String name = ByteBufUtils.readString(buffer);
group.put(name, id);
}
} catch (Exception ignored) {
@@ -173,7 +173,7 @@ public class NoppesUtil {
int size = buffer.readInt();
for(int i = 0; i < size; i++){
int id = buffer.readInt();
- String name = Server.readString(buffer);
+ String name = ByteBufUtils.readString(buffer);
group.put(name, id);
}
} catch (Exception ignored) {
@@ -194,7 +194,7 @@ public class NoppesUtil {
int size = buffer.readInt();
for(int i = 0; i < size; i++){
int id = buffer.readInt();
- String name = Server.readString(buffer);
+ String name = ByteBufUtils.readString(buffer);
data.put(name, id);
}
} catch (Exception e) {
@@ -209,7 +209,7 @@ public class NoppesUtil {
int size = buffer.readInt();
for(int i = 0; i < size; i++){
int id = buffer.readInt();
- String name = Server.readString(buffer);
+ String name = ByteBufUtils.readString(buffer);
data.put(name, id);
}
} catch (Exception e) {
diff --git a/src/main/java/noppes/npcs/client/PacketHandlerClient.java b/src/main/java/noppes/npcs/client/PacketHandlerClient.java
deleted file mode 100644
index 49ea68513..000000000
--- a/src/main/java/noppes/npcs/client/PacketHandlerClient.java
+++ /dev/null
@@ -1,159 +0,0 @@
-package noppes.npcs.client;
-
-import cpw.mods.fml.common.eventhandler.SubscribeEvent;
-import cpw.mods.fml.common.network.FMLNetworkEvent.ClientCustomPacketEvent;
-import io.netty.buffer.ByteBuf;
-import net.minecraft.client.Minecraft;
-import net.minecraft.client.gui.GuiScreen;
-import net.minecraft.entity.Entity;
-import net.minecraft.entity.player.EntityPlayer;
-import net.minecraft.item.ItemStack;
-import net.minecraft.nbt.NBTTagCompound;
-import net.minecraft.network.PacketBuffer;
-import net.minecraft.village.MerchantRecipeList;
-import noppes.npcs.*;
-import noppes.npcs.client.gui.GuiNpcMobSpawnerAdd;
-import noppes.npcs.client.gui.OverlayQuestTracking;
-import noppes.npcs.client.gui.customoverlay.OverlayCustom;
-import noppes.npcs.client.gui.player.GuiBook;
-import noppes.npcs.client.gui.util.*;
-import noppes.npcs.constants.EnumGuiType;
-import noppes.npcs.constants.EnumPacketClient;
-import noppes.npcs.constants.EnumPacketServer;
-import noppes.npcs.controllers.data.Animation;
-import noppes.npcs.controllers.data.AnimationData;
-import noppes.npcs.controllers.data.MarkData;
-import noppes.npcs.entity.EntityNPCInterface;
-
-import java.io.IOException;
-
-public class PacketHandlerClient extends PacketHandlerServer{
-
- @SubscribeEvent
- public void onPacketData(ClientCustomPacketEvent event) {
- EntityPlayer player = Minecraft.getMinecraft().thePlayer;
- ByteBuf buffer = event.packet.payload();
- try {
- client(buffer,(EntityPlayer) player,EnumPacketClient.values()[buffer.readInt()]);
- } catch (IOException e) {
- e.printStackTrace();
- }
- }
-
- private void client(ByteBuf buffer, final EntityPlayer player, EnumPacketClient type) throws IOException{
- if(type == EnumPacketClient.MARK_DATA){
- Entity entity = Minecraft.getMinecraft().theWorld.getEntityByID(buffer.readInt());
- if(!(entity instanceof EntityNPCInterface))
- return;
- MarkData data = MarkData.get((EntityNPCInterface) entity);
- data.setNBT(Server.readNBT(buffer));
- }
- else if(type == EnumPacketClient.ISGUIOPEN){
- boolean isGUIOpen = Minecraft.getMinecraft().currentScreen != null;
-
- NoppesUtil.isGUIOpen(isGUIOpen);
- }
- else if(type == EnumPacketClient.SCRIPT_OVERLAY_DATA){
- OverlayCustom overlayCustom = new OverlayCustom(Minecraft.getMinecraft());
- overlayCustom.setOverlayData(Server.readNBT(buffer));
-
- ClientCacheHandler.customOverlays.put(overlayCustom.overlay.getID(),overlayCustom);
- }
- else if(type == EnumPacketClient.SCRIPT_OVERLAY_CLOSE){
- int id = buffer.readInt();
- ClientCacheHandler.customOverlays.remove(id);
- }
- else if(type == EnumPacketClient.OVERLAY_QUEST_TRACKING){
- try {
- NBTTagCompound compound = Server.readNBT(buffer);
- ClientCacheHandler.questTrackingOverlay = new OverlayQuestTracking(Minecraft.getMinecraft());
- ClientCacheHandler.questTrackingOverlay.setOverlayData(compound);
- } catch (IOException e) {
- ClientCacheHandler.questTrackingOverlay = null;
- }
- }
- else if(type == EnumPacketClient.SWING_PLAYER_ARM){
- Minecraft.getMinecraft().thePlayer.swingItem();
- }
- else if(type == EnumPacketClient.PLAYER_UPDATE_SKIN_OVERLAYS) {
- EntityPlayer sendingPlayer = Minecraft.getMinecraft().theWorld.getPlayerEntityByName(Server.readString(buffer));
- NBTTagCompound compound = Server.readNBT(buffer);
- if (sendingPlayer != null) {
- NoppesUtil.updateSkinOverlayData(sendingPlayer, compound);
- }
- }
- else if(type == EnumPacketClient.UPDATE_ANIMATIONS) {
- NBTTagCompound compound = Server.readNBT(buffer);
- AnimationData animationData = null;
- if (compound.hasKey("EntityId")) {
- Entity entity = Minecraft.getMinecraft().theWorld.getEntityByID(compound.getInteger("EntityId"));
- if (entity instanceof EntityNPCInterface) {
- animationData = ((EntityNPCInterface) entity).display.animationData;
- }
- } else {
- EntityPlayer sendingPlayer = Minecraft.getMinecraft().theWorld.getPlayerEntityByName(Server.readString(buffer));
- if (sendingPlayer != null) {
- if (!ClientCacheHandler.playerAnimations.containsKey(sendingPlayer.getUniqueID())) {
- ClientCacheHandler.playerAnimations.put(sendingPlayer.getUniqueID(), new AnimationData(sendingPlayer));
- }
- animationData = ClientCacheHandler.playerAnimations.get(sendingPlayer.getUniqueID());
- animationData.parent = sendingPlayer;
- }
- }
-
- if (animationData != null) {
- int animationId;
- if (compound.hasKey("AnimationID")) {
- animationId = compound.getInteger("AnimationID");
- } else {
- Animation animation = new Animation();
- animation.readFromNBT(compound.getCompoundTag("Animation"));
- ClientCacheHandler.animationCache.put(animation.getID(), animation);
- animationId = animation.getID();
- }
-
- animationData.setAnimation(ClientCacheHandler.animationCache.get(animationId));
- animationData.readFromNBT(compound);
- Client.sendData(EnumPacketServer.CacheAnimation, animationId);
- }
- }
- else if(type == EnumPacketClient.DISABLE_MOUSE_INPUT) {
- long length = buffer.readLong();
- try {
- String parsedButtons = Server.readString(buffer);
- if (parsedButtons == null || parsedButtons.isEmpty()) {
- ClientEventHandler.disabledButtonTimes.put(-1, length);
- return;
- }
-
- String[] splitIds = parsedButtons.split(";");
- for (String s : splitIds) {
- ClientEventHandler.disabledButtonTimes.put(Integer.parseInt(s), length);
- }
- } catch (Exception ignored) {}
- }
- else if(type == EnumPacketClient.SYNC_WEAPON) {
- Entity entity = Minecraft.getMinecraft().theWorld.getEntityByID(buffer.readInt());
- if(!(entity instanceof EntityNPCInterface))
- return;
- EntityNPCInterface npc = (EntityNPCInterface) entity;
- int weaponSlotIndex = buffer.readInt();
- ItemStack stack = ItemStack.loadItemStackFromNBT(Server.readNBT(buffer));
- npc.inventory.weapons.put(weaponSlotIndex,stack);
- }
- else if(type == EnumPacketClient.PARTY_DATA){
- GuiScreen gui = Minecraft.getMinecraft().currentScreen;
- if(gui == null)
- return;
-
- if(gui instanceof GuiNPCInterface && ((GuiNPCInterface)gui).hasSubGui()){
- gui = (GuiScreen) ((GuiNPCInterface)gui).getSubGui();
- }
- else if(gui instanceof GuiContainerNPCInterface && ((GuiContainerNPCInterface)gui).hasSubGui()){
- gui = (GuiScreen) ((GuiContainerNPCInterface)gui).getSubGui();
- }
- if(gui instanceof IPartyData)
- ((IPartyData)gui).setPartyData(Server.readNBT(buffer));
- }
- }
-}
diff --git a/src/main/java/noppes/npcs/constants/EnumPacketClient.java b/src/main/java/noppes/npcs/constants/EnumPacketClient.java
index 13f19c93d..bcbc77d5b 100644
--- a/src/main/java/noppes/npcs/constants/EnumPacketClient.java
+++ b/src/main/java/noppes/npcs/constants/EnumPacketClient.java
@@ -1,16 +1,4 @@
package
noppes.npcs.constants;
-public enum EnumPacketClient {
- ISGUIOPEN,
- SCRIPT_OVERLAY_DATA,
- SCRIPT_OVERLAY_CLOSE,
- SWING_PLAYER_ARM,
- PLAYER_UPDATE_SKIN_OVERLAYS,
- UPDATE_ANIMATIONS,
- OVERLAY_QUEST_TRACKING,
- DISABLE_MOUSE_INPUT,
- SYNC_WEAPON,
- MARK_DATA,
- PARTY_DATA
-}
+public enum EnumPacketClient {}
diff --git a/src/main/java/noppes/npcs/controllers/CustomGuiController.java b/src/main/java/noppes/npcs/controllers/CustomGuiController.java
index ef8c2112d..c0800dce5 100644
--- a/src/main/java/noppes/npcs/controllers/CustomGuiController.java
+++ b/src/main/java/noppes/npcs/controllers/CustomGuiController.java
@@ -1,16 +1,17 @@
package noppes.npcs.controllers;
import io.netty.buffer.ByteBuf;
+import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.PacketUtil;
+import kamkeel.npcs.network.packets.client.script.ScriptOverlayDataPacket;
+import kamkeel.npcs.util.ByteBufUtils;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.nbt.NBTTagList;
import noppes.npcs.CustomNpcs;
-import noppes.npcs.Server;
import noppes.npcs.api.entity.IPlayer;
import noppes.npcs.api.item.IItemStack;
import noppes.npcs.constants.EnumGuiType;
-import noppes.npcs.constants.EnumPacketClient;
import noppes.npcs.constants.EnumScriptType;
import noppes.npcs.containers.ContainerCustomGui;
import noppes.npcs.scripted.NpcAPI;
@@ -42,11 +43,11 @@ public class CustomGuiController {
}
public static void openOverlay(IPlayer player, ScriptOverlay gui) {
- Server.sendDataChecked((EntityPlayerMP)player.getMCEntity(), EnumPacketClient.SCRIPT_OVERLAY_DATA, new Object[]{gui.toNBT()});
+ PacketHandler.Instance.sendToPlayer(new ScriptOverlayDataPacket(gui.toNBT()), (EntityPlayerMP)player.getMCEntity());
}
public static boolean updateOverlay(IPlayer player, ScriptOverlay gui) {
- Server.sendDataChecked((EntityPlayerMP)player.getMCEntity(), EnumPacketClient.SCRIPT_OVERLAY_DATA, new Object[]{gui.toNBT()});
+ PacketHandler.Instance.sendToPlayer(new ScriptOverlayDataPacket(gui.toNBT()), (EntityPlayerMP)player.getMCEntity());
return true;
}
@@ -131,7 +132,7 @@ public class CustomGuiController {
public static String[] readScrollSelection(ByteBuf buffer) {
try {
- NBTTagList list = Server.readNBT(buffer).getTagList("selection", 8);
+ NBTTagList list = ByteBufUtils.readNBT(buffer).getTagList("selection", 8);
String[] selection = new String[list.tagCount()];
for(int i = 0; i < list.tagCount(); ++i) {
diff --git a/src/main/java/noppes/npcs/controllers/PartyController.java b/src/main/java/noppes/npcs/controllers/PartyController.java
index ec21e8951..caaf94fff 100644
--- a/src/main/java/noppes/npcs/controllers/PartyController.java
+++ b/src/main/java/noppes/npcs/controllers/PartyController.java
@@ -135,7 +135,7 @@ public class PartyController {
if(playerMP != null){
PlayerData playerData = PlayerDataController.Instance.getPlayerData(playerMP);
if(playerData != null){
- Server.sendData((EntityPlayerMP) playerMP, EnumPacketClient.PARTY_DATA, compound);
+ PacketUtil.sendPartyData((EntityPlayerMP) playerMP, compound);
}
}
}
@@ -166,7 +166,7 @@ public class PartyController {
if(playerMP != null){
PlayerData playerData = PlayerDataController.Instance.getPlayerData(playerMP);
if(playerData != null){
- Server.sendData((EntityPlayerMP) playerMP, EnumPacketClient.PARTY_DATA, compound);
+ PacketUtil.sendPartyData((EntityPlayerMP) playerMP, compound);
}
}
}
diff --git a/src/main/java/noppes/npcs/controllers/data/AnimationData.java b/src/main/java/noppes/npcs/controllers/data/AnimationData.java
index 4c47c9e5e..4308875e5 100644
--- a/src/main/java/noppes/npcs/controllers/data/AnimationData.java
+++ b/src/main/java/noppes/npcs/controllers/data/AnimationData.java
@@ -3,6 +3,8 @@ package noppes.npcs.controllers.data;
import cpw.mods.fml.common.FMLCommonHandler;
import cpw.mods.fml.relauncher.Side;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.packets.client.UpdateAnimationsPacket;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.EntityPlayerMP;
@@ -128,7 +130,8 @@ public class AnimationData implements IAnimationData {
if (!(entity instanceof EntityPlayer)) {
data.setInteger("EntityId", entity.getEntityId());
}
- Server.sendData((EntityPlayerMP) ((PlayerData) parent).player, EnumPacketClient.UPDATE_ANIMATIONS, data, entity.getCommandSenderName());
+
+ PacketHandler.Instance.sendToPlayer(new UpdateAnimationsPacket(data, entity.getCommandSenderName()), (EntityPlayerMP) ((PlayerData) parent).player);
}
public NBTTagCompound writeToNBT(NBTTagCompound compound) {
diff --git a/src/main/java/noppes/npcs/controllers/data/MarkData.java b/src/main/java/noppes/npcs/controllers/data/MarkData.java
index 27a9923f4..290ec0c9c 100644
--- a/src/main/java/noppes/npcs/controllers/data/MarkData.java
+++ b/src/main/java/noppes/npcs/controllers/data/MarkData.java
@@ -1,7 +1,10 @@
package noppes.npcs.controllers.data;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.packets.client.MarkDataPacket;
import net.minecraft.entity.Entity;
import net.minecraft.entity.EntityLivingBase;
+import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.nbt.NBTTagList;
import net.minecraft.world.World;
@@ -102,7 +105,7 @@ public class MarkData implements IExtendedEntityProperties {
public void init(Entity entity, World world) {}
public void syncClients() {
- Server.sendToAll(EnumPacketClient.MARK_DATA, entity.getEntityId(), getNBT());
+ PacketHandler.Instance.sendToAll(new MarkDataPacket(entity.getEntityId(), getNBT()));
}
public class Mark implements IMark {
diff --git a/src/main/java/noppes/npcs/controllers/data/PlayerQuestData.java b/src/main/java/noppes/npcs/controllers/data/PlayerQuestData.java
index ac779f0d1..2f9d08ac2 100644
--- a/src/main/java/noppes/npcs/controllers/data/PlayerQuestData.java
+++ b/src/main/java/noppes/npcs/controllers/data/PlayerQuestData.java
@@ -1,6 +1,8 @@
package noppes.npcs.controllers.data;
+import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.PacketUtil;
+import kamkeel.npcs.network.packets.client.OverlayQuestTrackingPacket;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.nbt.NBTTagCompound;
@@ -202,8 +204,8 @@ public class PlayerQuestData implements IPlayerQuestData {
public void untrackQuest() {
if (this.trackedQuest != null) {
this.trackedQuest = null;
- Server.sendData((EntityPlayerMP) this.parent.player, EnumPacketClient.OVERLAY_QUEST_TRACKING);
- }
+ PacketHandler.Instance.sendToPlayer(new OverlayQuestTrackingPacket(new NBTTagCompound()), (EntityPlayerMP) this.parent.player);
+ }
}
public IQuest getTrackedQuest() {
diff --git a/src/main/java/noppes/npcs/entity/EntityNPCInterface.java b/src/main/java/noppes/npcs/entity/EntityNPCInterface.java
index 88c43470f..5a54dc177 100644
--- a/src/main/java/noppes/npcs/entity/EntityNPCInterface.java
+++ b/src/main/java/noppes/npcs/entity/EntityNPCInterface.java
@@ -13,6 +13,8 @@ import kamkeel.npcs.network.enums.EnumSoundOperation;
import kamkeel.npcs.network.packets.client.ChatBubblePacket;
import kamkeel.npcs.network.packets.client.SoundManagementPacket;
import kamkeel.npcs.network.packets.client.npc.UpdateNpcPacket;
+import kamkeel.npcs.network.packets.client.npc.WeaponNpcPacket;
+import kamkeel.npcs.util.ByteBufUtils;
import net.minecraft.block.Block;
import net.minecraft.block.material.Material;
import net.minecraft.client.Minecraft;
@@ -39,7 +41,6 @@ import net.minecraft.network.play.server.S0BPacketAnimation;
import net.minecraft.pathfinding.PathNavigate;
import net.minecraft.potion.Potion;
import net.minecraft.potion.PotionEffect;
-import net.minecraft.server.MinecraftServer;
import net.minecraft.util.*;
import net.minecraft.world.World;
import net.minecraft.world.WorldServer;
@@ -223,10 +224,9 @@ public abstract class EntityNPCInterface extends EntityCreature implements IEnti
if(itemstack1!=null){
itemstack1.writeToNBT(itemNBT);
}
- for(Object obj: MinecraftServer.getServer().getConfigurationManager().playerEntityList){
- Server.sendData((EntityPlayerMP) obj, EnumPacketClient.SYNC_WEAPON, getEntityId(), i, itemNBT);
- }
- inventory.prevWeapons.put(i,itemstack1 == null ? null : itemstack1.copy());
+
+ PacketHandler.Instance.sendTracking(new WeaponNpcPacket(getEntityId(), i, itemNBT), this);
+ inventory.prevWeapons.put(i,itemstack1 == null ? null : itemstack1.copy());
}
}
this.timers.update();
@@ -1624,7 +1624,7 @@ public abstract class EntityNPCInterface extends EntityCreature implements IEnti
@Override
public void writeSpawnData(ByteBuf buffer) {
try {
- Server.writeNBT(buffer, writeSpawnData());
+ ByteBufUtils.writeNBT(buffer, writeSpawnData());
} catch (IOException e) {
e.printStackTrace();
}
@@ -1663,7 +1663,7 @@ public abstract class EntityNPCInterface extends EntityCreature implements IEnti
@Override
public void readSpawnData(ByteBuf buf) {
try {
- readSpawnData(Server.readNBT(buf));
+ readSpawnData(ByteBufUtils.readNBT(buf));
} catch (IOException e) {
}
}
diff --git a/src/main/java/noppes/npcs/entity/data/DataSkinOverlays.java b/src/main/java/noppes/npcs/entity/data/DataSkinOverlays.java
index e9d51495c..8f9f938f6 100644
--- a/src/main/java/noppes/npcs/entity/data/DataSkinOverlays.java
+++ b/src/main/java/noppes/npcs/entity/data/DataSkinOverlays.java
@@ -1,5 +1,7 @@
package noppes.npcs.entity.data;
+import kamkeel.npcs.network.PacketHandler;
+import kamkeel.npcs.network.packets.client.PlayerUpdateSkinOverlaysPacket;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.nbt.NBTTagList;
import noppes.npcs.Server;
@@ -54,7 +56,7 @@ public class DataSkinOverlays implements IOverlayHandler {
if (parent instanceof PlayerData && ((PlayerData) parent).player != null) {
NBTTagCompound compound = this.writeToNBT(new NBTTagCompound());
((PlayerData) parent).player.getEntityData().setTag("SkinOverlayData", compound.getTagList("SkinOverlayData", 10));
- Server.sendToAll(EnumPacketClient.PLAYER_UPDATE_SKIN_OVERLAYS, ((PlayerData) parent).player.getCommandSenderName(), compound);
+ PacketHandler.Instance.sendToAll(new PlayerUpdateSkinOverlaysPacket(((PlayerData) parent).player.getCommandSenderName(), compound));
} else if (parent instanceof EntityNPCInterface) {
((EntityNPCInterface) parent).updateClient = true;
}
diff --git a/src/main/java/noppes/npcs/scripted/entity/ScriptPlayer.java b/src/main/java/noppes/npcs/scripted/entity/ScriptPlayer.java
index 4dc28df83..219fa2a6f 100644
--- a/src/main/java/noppes/npcs/scripted/entity/ScriptPlayer.java
+++ b/src/main/java/noppes/npcs/scripted/entity/ScriptPlayer.java
@@ -1,6 +1,9 @@
package noppes.npcs.scripted.entity;
+import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.PacketUtil;
+import kamkeel.npcs.network.packets.client.script.ScriptOverlayClosePacket;
+import kamkeel.npcs.network.packets.client.script.ScriptOverlayDataPacket;
import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.item.Item;
@@ -765,8 +768,8 @@ public class ScriptPlayer extends ScriptLivingBase
}
public void closeOverlay(int id) {
- Server.sendData((EntityPlayerMP)this.entity, EnumPacketClient.SCRIPT_OVERLAY_CLOSE, id, new NBTTagCompound());
- }
+ PacketHandler.Instance.sendToPlayer(new ScriptOverlayClosePacket(id), (EntityPlayerMP)this.entity);
+ }
public IOverlayHandler getOverlays() {
return this.getData().skinOverlays;
From e042b2cfacd77ad666fe301daa62eb27066cf340 Mon Sep 17 00:00:00 2001
From: Kam
Date: Thu, 30 Jan 2025 12:45:06 -0500
Subject: [PATCH 035/357] EnumPacketClient Deleted
---
src/main/java/noppes/npcs/blocks/BlockWaypoint.java | 2 --
src/main/java/noppes/npcs/constants/EnumPacketClient.java | 4 ----
src/main/java/noppes/npcs/controllers/data/AnimationData.java | 2 --
src/main/java/noppes/npcs/controllers/data/BankData.java | 2 --
.../java/noppes/npcs/controllers/data/PlayerQuestData.java | 2 --
src/main/java/noppes/npcs/controllers/data/Quest.java | 1 -
6 files changed, 13 deletions(-)
delete mode 100644 src/main/java/noppes/npcs/constants/EnumPacketClient.java
diff --git a/src/main/java/noppes/npcs/blocks/BlockWaypoint.java b/src/main/java/noppes/npcs/blocks/BlockWaypoint.java
index 632b4b89a..caff78b41 100644
--- a/src/main/java/noppes/npcs/blocks/BlockWaypoint.java
+++ b/src/main/java/noppes/npcs/blocks/BlockWaypoint.java
@@ -14,10 +14,8 @@ import net.minecraft.world.World;
import noppes.npcs.CustomItems;
import noppes.npcs.CustomNpcs;
import noppes.npcs.CustomNpcsPermissions;
-import noppes.npcs.Server;
import noppes.npcs.blocks.tiles.TileWaypoint;
import noppes.npcs.constants.EnumGuiType;
-import noppes.npcs.constants.EnumPacketClient;
public class BlockWaypoint extends BlockContainer{
diff --git a/src/main/java/noppes/npcs/constants/EnumPacketClient.java b/src/main/java/noppes/npcs/constants/EnumPacketClient.java
deleted file mode 100644
index bcbc77d5b..000000000
--- a/src/main/java/noppes/npcs/constants/EnumPacketClient.java
+++ /dev/null
@@ -1,4 +0,0 @@
-package
-noppes.npcs.constants;
-
-public enum EnumPacketClient {}
diff --git a/src/main/java/noppes/npcs/controllers/data/AnimationData.java b/src/main/java/noppes/npcs/controllers/data/AnimationData.java
index 4308875e5..82e6abcac 100644
--- a/src/main/java/noppes/npcs/controllers/data/AnimationData.java
+++ b/src/main/java/noppes/npcs/controllers/data/AnimationData.java
@@ -11,11 +11,9 @@ import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.util.AxisAlignedBB;
import noppes.npcs.DataDisplay;
-import noppes.npcs.Server;
import noppes.npcs.api.handler.data.IAnimation;
import noppes.npcs.api.handler.data.IAnimationData;
import noppes.npcs.constants.EnumAnimationPart;
-import noppes.npcs.constants.EnumPacketClient;
import noppes.npcs.controllers.PlayerDataController;
import noppes.npcs.entity.EntityNPCInterface;
diff --git a/src/main/java/noppes/npcs/controllers/data/BankData.java b/src/main/java/noppes/npcs/controllers/data/BankData.java
index cef17492d..04525077e 100644
--- a/src/main/java/noppes/npcs/controllers/data/BankData.java
+++ b/src/main/java/noppes/npcs/controllers/data/BankData.java
@@ -10,9 +10,7 @@ import net.minecraft.nbt.NBTTagList;
import noppes.npcs.NBTTags;
import noppes.npcs.NoppesUtilServer;
import noppes.npcs.NpcMiscInventory;
-import noppes.npcs.Server;
import noppes.npcs.constants.EnumGuiType;
-import noppes.npcs.constants.EnumPacketClient;
import noppes.npcs.containers.ContainerNPCBankInterface;
import noppes.npcs.controllers.BankController;
import noppes.npcs.entity.EntityNPCInterface;
diff --git a/src/main/java/noppes/npcs/controllers/data/PlayerQuestData.java b/src/main/java/noppes/npcs/controllers/data/PlayerQuestData.java
index 2f9d08ac2..7f984c1b6 100644
--- a/src/main/java/noppes/npcs/controllers/data/PlayerQuestData.java
+++ b/src/main/java/noppes/npcs/controllers/data/PlayerQuestData.java
@@ -9,11 +9,9 @@ import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.nbt.NBTTagList;
import noppes.npcs.EventHooks;
import noppes.npcs.NoppesUtilPlayer;
-import noppes.npcs.Server;
import noppes.npcs.api.handler.IPlayerQuestData;
import noppes.npcs.api.handler.data.IParty;
import noppes.npcs.api.handler.data.IQuest;
-import noppes.npcs.constants.EnumPacketClient;
import noppes.npcs.constants.EnumQuestCompletion;
import noppes.npcs.constants.EnumQuestRepeat;
import noppes.npcs.constants.EnumQuestType;
diff --git a/src/main/java/noppes/npcs/controllers/data/Quest.java b/src/main/java/noppes/npcs/controllers/data/Quest.java
index 73e34bbe8..8bed1a782 100644
--- a/src/main/java/noppes/npcs/controllers/data/Quest.java
+++ b/src/main/java/noppes/npcs/controllers/data/Quest.java
@@ -8,7 +8,6 @@ import noppes.npcs.*;
import noppes.npcs.api.IContainer;
import noppes.npcs.api.entity.IPlayer;
import noppes.npcs.api.handler.data.*;
-import noppes.npcs.constants.EnumPacketClient;
import noppes.npcs.constants.EnumQuestCompletion;
import noppes.npcs.constants.EnumQuestRepeat;
import noppes.npcs.constants.EnumQuestType;
From db7473fd578eb90d13a9127c49d1114663167f0f Mon Sep 17 00:00:00 2001
From: Kam
Date: Thu, 30 Jan 2025 12:45:10 -0500
Subject: [PATCH 036/357] Delete more
---
src/main/java/foxz/command/CmdConfig.java | 2 --
src/main/java/kamkeel/npcs/command/ConfigCommand.java | 2 --
src/main/java/noppes/npcs/blocks/BlockMailbox.java | 3 ---
src/main/java/noppes/npcs/blocks/BlockNpcRedstone.java | 2 --
src/main/java/noppes/npcs/controllers/PartyController.java | 2 --
src/main/java/noppes/npcs/controllers/data/MarkData.java | 3 ---
src/main/java/noppes/npcs/entity/data/DataSkinOverlays.java | 2 --
src/main/java/noppes/npcs/scripted/entity/ScriptPlayer.java | 2 --
8 files changed, 18 deletions(-)
diff --git a/src/main/java/foxz/command/CmdConfig.java b/src/main/java/foxz/command/CmdConfig.java
index e712fa4ca..52e1b6c28 100644
--- a/src/main/java/foxz/command/CmdConfig.java
+++ b/src/main/java/foxz/command/CmdConfig.java
@@ -14,9 +14,7 @@ import net.minecraft.block.BlockLeavesBase;
import net.minecraft.block.BlockVine;
import net.minecraft.entity.player.EntityPlayerMP;
import noppes.npcs.CustomNpcs;
-import noppes.npcs.Server;
import noppes.npcs.config.ConfigMain;
-import noppes.npcs.constants.EnumPacketClient;
import noppes.npcs.controllers.ChunkController;
import java.util.Arrays;
diff --git a/src/main/java/kamkeel/npcs/command/ConfigCommand.java b/src/main/java/kamkeel/npcs/command/ConfigCommand.java
index 0459e469a..1f9dee87d 100644
--- a/src/main/java/kamkeel/npcs/command/ConfigCommand.java
+++ b/src/main/java/kamkeel/npcs/command/ConfigCommand.java
@@ -13,9 +13,7 @@ import net.minecraft.command.ICommandSender;
import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.util.ResourceLocation;
import noppes.npcs.CustomNpcs;
-import noppes.npcs.Server;
import noppes.npcs.config.ConfigMain;
-import noppes.npcs.constants.EnumPacketClient;
import noppes.npcs.controllers.ChunkController;
import noppes.npcs.controllers.PlayerDataController;
diff --git a/src/main/java/noppes/npcs/blocks/BlockMailbox.java b/src/main/java/noppes/npcs/blocks/BlockMailbox.java
index 50ba865e9..c10056be7 100644
--- a/src/main/java/noppes/npcs/blocks/BlockMailbox.java
+++ b/src/main/java/noppes/npcs/blocks/BlockMailbox.java
@@ -2,7 +2,6 @@ package noppes.npcs.blocks;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
-import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.PacketUtil;
import net.minecraft.block.BlockContainer;
import net.minecraft.block.material.Material;
@@ -18,10 +17,8 @@ import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.IIcon;
import net.minecraft.util.MathHelper;
import net.minecraft.world.World;
-import noppes.npcs.Server;
import noppes.npcs.blocks.tiles.TileMailbox;
import noppes.npcs.constants.EnumGuiType;
-import noppes.npcs.constants.EnumPacketClient;
import java.util.ArrayList;
import java.util.List;
diff --git a/src/main/java/noppes/npcs/blocks/BlockNpcRedstone.java b/src/main/java/noppes/npcs/blocks/BlockNpcRedstone.java
index c38ae3a64..fb595bb0b 100644
--- a/src/main/java/noppes/npcs/blocks/BlockNpcRedstone.java
+++ b/src/main/java/noppes/npcs/blocks/BlockNpcRedstone.java
@@ -15,10 +15,8 @@ import net.minecraft.world.World;
import noppes.npcs.CustomItems;
import noppes.npcs.CustomNpcs;
import noppes.npcs.CustomNpcsPermissions;
-import noppes.npcs.Server;
import noppes.npcs.blocks.tiles.TileRedstoneBlock;
import noppes.npcs.constants.EnumGuiType;
-import noppes.npcs.constants.EnumPacketClient;
public class BlockNpcRedstone extends BlockContainer{
public BlockNpcRedstone(){
diff --git a/src/main/java/noppes/npcs/controllers/PartyController.java b/src/main/java/noppes/npcs/controllers/PartyController.java
index caaf94fff..98e152e97 100644
--- a/src/main/java/noppes/npcs/controllers/PartyController.java
+++ b/src/main/java/noppes/npcs/controllers/PartyController.java
@@ -9,8 +9,6 @@ import net.minecraft.nbt.NBTTagString;
import noppes.npcs.EventHooks;
import noppes.npcs.NoppesUtilPlayer;
import noppes.npcs.NoppesUtilServer;
-import noppes.npcs.Server;
-import noppes.npcs.constants.EnumPacketClient;
import noppes.npcs.constants.EnumQuestCompletion;
import noppes.npcs.constants.EnumQuestType;
import noppes.npcs.controllers.data.Party;
diff --git a/src/main/java/noppes/npcs/controllers/data/MarkData.java b/src/main/java/noppes/npcs/controllers/data/MarkData.java
index 290ec0c9c..3f50be35f 100644
--- a/src/main/java/noppes/npcs/controllers/data/MarkData.java
+++ b/src/main/java/noppes/npcs/controllers/data/MarkData.java
@@ -4,15 +4,12 @@ import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.packets.client.MarkDataPacket;
import net.minecraft.entity.Entity;
import net.minecraft.entity.EntityLivingBase;
-import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.nbt.NBTTagList;
import net.minecraft.world.World;
import net.minecraftforge.common.IExtendedEntityProperties;
-import noppes.npcs.Server;
import noppes.npcs.api.entity.data.IMark;
import noppes.npcs.api.handler.data.IAvailability;
-import noppes.npcs.constants.EnumPacketClient;
import noppes.npcs.constants.MarkType;
import noppes.npcs.entity.EntityNPCInterface;
diff --git a/src/main/java/noppes/npcs/entity/data/DataSkinOverlays.java b/src/main/java/noppes/npcs/entity/data/DataSkinOverlays.java
index 8f9f938f6..7ae32545b 100644
--- a/src/main/java/noppes/npcs/entity/data/DataSkinOverlays.java
+++ b/src/main/java/noppes/npcs/entity/data/DataSkinOverlays.java
@@ -4,11 +4,9 @@ import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.packets.client.PlayerUpdateSkinOverlaysPacket;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.nbt.NBTTagList;
-import noppes.npcs.Server;
import noppes.npcs.api.ISkinOverlay;
import noppes.npcs.api.handler.IOverlayHandler;
import noppes.npcs.config.ConfigMain;
-import noppes.npcs.constants.EnumPacketClient;
import noppes.npcs.controllers.data.PlayerData;
import noppes.npcs.controllers.data.SkinOverlay;
import noppes.npcs.entity.EntityNPCInterface;
diff --git a/src/main/java/noppes/npcs/scripted/entity/ScriptPlayer.java b/src/main/java/noppes/npcs/scripted/entity/ScriptPlayer.java
index 219fa2a6f..34297e9b4 100644
--- a/src/main/java/noppes/npcs/scripted/entity/ScriptPlayer.java
+++ b/src/main/java/noppes/npcs/scripted/entity/ScriptPlayer.java
@@ -3,7 +3,6 @@ package noppes.npcs.scripted.entity;
import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.PacketUtil;
import kamkeel.npcs.network.packets.client.script.ScriptOverlayClosePacket;
-import kamkeel.npcs.network.packets.client.script.ScriptOverlayDataPacket;
import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.item.Item;
@@ -31,7 +30,6 @@ import noppes.npcs.api.item.IItemStack;
import noppes.npcs.api.overlay.ICustomOverlay;
import noppes.npcs.compat.PixelmonHelper;
import noppes.npcs.config.ConfigScript;
-import noppes.npcs.constants.EnumPacketClient;
import noppes.npcs.constants.EnumQuestRepeat;
import noppes.npcs.constants.EnumQuestType;
import noppes.npcs.containers.ContainerCustomGui;
From da9ed1d60f8aab2f81fc8ebd56dce977347bc4a9 Mon Sep 17 00:00:00 2001
From: Kam
Date: Thu, 30 Jan 2025 12:51:43 -0500
Subject: [PATCH 037/357] Remove PacketHandlerClient Reference
---
src/main/java/noppes/npcs/client/ClientProxy.java | 1 -
1 file changed, 1 deletion(-)
diff --git a/src/main/java/noppes/npcs/client/ClientProxy.java b/src/main/java/noppes/npcs/client/ClientProxy.java
index ec70a949f..f3f38ec8e 100644
--- a/src/main/java/noppes/npcs/client/ClientProxy.java
+++ b/src/main/java/noppes/npcs/client/ClientProxy.java
@@ -83,7 +83,6 @@ public class ClientProxy extends CommonProxy {
public void load() {
Font = new FontContainer(ConfigClient.FontType, ConfigClient.FontSize);
createFolders();
- CustomNpcs.Channel.register(new PacketHandlerClient());
CustomNpcs.ChannelPlayer.register(new PacketHandlerPlayer());
new MusicController();
new ScriptSoundController();
From db2144116f9082717a03290c5370042ba15b2eca Mon Sep 17 00:00:00 2001
From: Kam
Date: Thu, 30 Jan 2025 13:54:49 -0500
Subject: [PATCH 038/357] Reorg -- Data Packets designed to send to Client
---
src/main/java/foxz/command/CmdConfig.java | 2 +-
src/main/java/foxz/command/CmdQuest.java | 7 +-
.../npcs/command/QuestCategoryCommand.java | 11 +-
.../kamkeel/npcs/command/QuestCommand.java | 11 +-
.../npcs/controllers/SyncController.java | 28 ++--
.../kamkeel/npcs/network/PacketHandler.java | 98 +++++++-------
.../java/kamkeel/npcs/network/PacketUtil.java | 74 ----------
.../npcs/network/enums/EnumPacketType.java | 5 +-
.../{client => data}/AchievementPacket.java | 11 +-
.../{client => data}/ChatAlertPacket.java | 10 +-
.../{client => data}/ChatBubblePacket.java | 5 +-
.../ClonerPacket.java} | 10 +-
.../{client => data}/ConfigCommandPacket.java | 4 +-
.../DisableMouseInputPacket.java | 4 +-
.../packets/{ => data}/LoginPacket.java | 6 +-
.../{client => data}/MarkDataPacket.java | 6 +-
.../OverlayQuestTrackingPacket.java | 4 +-
.../{client => data}/ParticlePacket.java | 4 +-
.../PlayerUpdateSkinOverlaysPacket.java | 6 +-
.../QuestCompletionPacket.java | 12 +-
.../ScrollSelectedPacket.java | 10 +-
.../SoundManagementPacket.java | 5 +-
.../SwingPlayerArmPacket.java | 5 +-
.../UpdateAnimationsPacket.java | 6 +-
.../{client => data}/VillagerListPacket.java | 5 +-
.../{client => data}/gui/GuiClosePacket.java | 12 +-
.../{client => data}/gui/GuiErrorPacket.java | 12 +-
.../gui/GuiOpenBookPacket.java | 4 +-
.../{client => data}/gui/GuiOpenPacket.java | 10 +-
.../gui/GuiRedstonePacket.java | 6 +-
.../gui/GuiTeleporterPacket.java | 4 +-
.../gui/GuiWaypointPacket.java | 6 +-
.../{client => data}/gui/IsGuiOpenPacket.java | 5 +-
.../large/GuiDataPacket.java} | 18 ++-
.../large/PartyDataPacket.java} | 18 ++-
.../large/ScrollDataPacket.java} | 17 ++-
.../large/ScrollGroupPacket.java} | 16 ++-
.../large/ScrollListPacket.java} | 16 ++-
.../large/SyncPacket.java} | 16 +--
.../{client => data}/npc/DeleteNpcPacket.java | 5 +-
.../{client => data}/npc/DialogPacket.java | 4 +-
.../{client => data}/npc/EditNpcPacket.java | 5 +-
.../{client => data}/npc/RolePacket.java | 4 +-
.../{client => data}/npc/UpdateNpcPacket.java | 6 +-
.../{client => data}/npc/WeaponNpcPacket.java | 6 +-
.../script/ScriptOverlayClosePacket.java | 4 +-
.../script/ScriptOverlayDataPacket.java | 5 +-
.../script/ScriptedParticlePacket.java | 4 +-
.../java/noppes/npcs/NoppesUtilPlayer.java | 23 ++--
.../java/noppes/npcs/NoppesUtilServer.java | 44 +++---
.../java/noppes/npcs/PacketHandlerPlayer.java | 28 ++--
.../java/noppes/npcs/PacketHandlerServer.java | 128 +++++++++---------
.../java/noppes/npcs/ServerEventsHandler.java | 21 ++-
.../java/noppes/npcs/blocks/BlockBook.java | 2 +-
.../java/noppes/npcs/blocks/BlockMailbox.java | 4 +-
.../npcs/constants/EnumPlayerPacket.java | 30 +++-
.../npcs/controllers/CustomGuiController.java | 8 +-
.../npcs/controllers/PartyController.java | 30 ++--
.../controllers/PlayerQuestController.java | 15 +-
.../npcs/controllers/data/BankData.java | 4 +-
.../npcs/controllers/data/PlayerData.java | 7 +-
.../controllers/data/PlayerQuestData.java | 9 +-
.../noppes/npcs/controllers/data/Quest.java | 4 +-
.../npcs/entity/EntityNPCInterface.java | 12 +-
.../npcs/scripted/entity/ScriptPlayer.java | 12 +-
65 files changed, 459 insertions(+), 474 deletions(-)
rename src/main/java/kamkeel/npcs/network/packets/{client => data}/AchievementPacket.java (85%)
rename src/main/java/kamkeel/npcs/network/packets/{client => data}/ChatAlertPacket.java (81%)
rename src/main/java/kamkeel/npcs/network/packets/{client => data}/ChatBubblePacket.java (94%)
rename src/main/java/kamkeel/npcs/network/packets/{client/large/LargeClonerPacket.java => data/ClonerPacket.java} (87%)
rename src/main/java/kamkeel/npcs/network/packets/{client => data}/ConfigCommandPacket.java (96%)
rename src/main/java/kamkeel/npcs/network/packets/{client => data}/DisableMouseInputPacket.java (95%)
rename src/main/java/kamkeel/npcs/network/packets/{ => data}/LoginPacket.java (87%)
rename src/main/java/kamkeel/npcs/network/packets/{client => data}/MarkDataPacket.java (92%)
rename src/main/java/kamkeel/npcs/network/packets/{client => data}/OverlayQuestTrackingPacket.java (95%)
rename src/main/java/kamkeel/npcs/network/packets/{client => data}/ParticlePacket.java (96%)
rename src/main/java/kamkeel/npcs/network/packets/{client => data}/PlayerUpdateSkinOverlaysPacket.java (92%)
rename src/main/java/kamkeel/npcs/network/packets/{client => data}/QuestCompletionPacket.java (77%)
rename src/main/java/kamkeel/npcs/network/packets/{client => data}/ScrollSelectedPacket.java (80%)
rename src/main/java/kamkeel/npcs/network/packets/{client => data}/SoundManagementPacket.java (97%)
rename src/main/java/kamkeel/npcs/network/packets/{client => data}/SwingPlayerArmPacket.java (89%)
rename src/main/java/kamkeel/npcs/network/packets/{client => data}/UpdateAnimationsPacket.java (95%)
rename src/main/java/kamkeel/npcs/network/packets/{client => data}/VillagerListPacket.java (92%)
rename src/main/java/kamkeel/npcs/network/packets/{client => data}/gui/GuiClosePacket.java (82%)
rename src/main/java/kamkeel/npcs/network/packets/{client => data}/gui/GuiErrorPacket.java (81%)
rename src/main/java/kamkeel/npcs/network/packets/{client => data}/gui/GuiOpenBookPacket.java (95%)
rename src/main/java/kamkeel/npcs/network/packets/{client => data}/gui/GuiOpenPacket.java (80%)
rename src/main/java/kamkeel/npcs/network/packets/{client => data}/gui/GuiRedstonePacket.java (89%)
rename src/main/java/kamkeel/npcs/network/packets/{client => data}/gui/GuiTeleporterPacket.java (92%)
rename src/main/java/kamkeel/npcs/network/packets/{client => data}/gui/GuiWaypointPacket.java (89%)
rename src/main/java/kamkeel/npcs/network/packets/{client => data}/gui/IsGuiOpenPacket.java (89%)
rename src/main/java/kamkeel/npcs/network/packets/{client/large/LargeGuiDataPacket.java => data/large/GuiDataPacket.java} (80%)
rename src/main/java/kamkeel/npcs/network/packets/{client/large/LargePartyDataPacket.java => data/large/PartyDataPacket.java} (79%)
rename src/main/java/kamkeel/npcs/network/packets/{client/large/LargeScrollDataPacket.java => data/large/ScrollDataPacket.java} (72%)
rename src/main/java/kamkeel/npcs/network/packets/{client/large/LargeScrollGroupPacket.java => data/large/ScrollGroupPacket.java} (71%)
rename src/main/java/kamkeel/npcs/network/packets/{client/large/LargeScrollListPacket.java => data/large/ScrollListPacket.java} (71%)
rename src/main/java/kamkeel/npcs/network/packets/{client/large/LargeSyncPacket.java => data/large/SyncPacket.java} (85%)
rename src/main/java/kamkeel/npcs/network/packets/{client => data}/npc/DeleteNpcPacket.java (91%)
rename src/main/java/kamkeel/npcs/network/packets/{client => data}/npc/DialogPacket.java (96%)
rename src/main/java/kamkeel/npcs/network/packets/{client => data}/npc/EditNpcPacket.java (91%)
rename src/main/java/kamkeel/npcs/network/packets/{client => data}/npc/RolePacket.java (94%)
rename src/main/java/kamkeel/npcs/network/packets/{client => data}/npc/UpdateNpcPacket.java (91%)
rename src/main/java/kamkeel/npcs/network/packets/{client => data}/npc/WeaponNpcPacket.java (92%)
rename src/main/java/kamkeel/npcs/network/packets/{client => data}/script/ScriptOverlayClosePacket.java (92%)
rename src/main/java/kamkeel/npcs/network/packets/{client => data}/script/ScriptOverlayDataPacket.java (92%)
rename src/main/java/kamkeel/npcs/network/packets/{client => data}/script/ScriptedParticlePacket.java (96%)
diff --git a/src/main/java/foxz/command/CmdConfig.java b/src/main/java/foxz/command/CmdConfig.java
index 52e1b6c28..597db83a1 100644
--- a/src/main/java/foxz/command/CmdConfig.java
+++ b/src/main/java/foxz/command/CmdConfig.java
@@ -7,7 +7,7 @@ import foxz.commandhelper.permissions.OpOnly;
import foxz.commandhelper.permissions.PlayerOnly;
import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.enums.EnumConfigOperation;
-import kamkeel.npcs.network.packets.client.ConfigCommandPacket;
+import kamkeel.npcs.network.packets.data.ConfigCommandPacket;
import net.minecraft.block.Block;
import net.minecraft.block.BlockIce;
import net.minecraft.block.BlockLeavesBase;
diff --git a/src/main/java/foxz/command/CmdQuest.java b/src/main/java/foxz/command/CmdQuest.java
index efac25afe..78cce2830 100644
--- a/src/main/java/foxz/command/CmdQuest.java
+++ b/src/main/java/foxz/command/CmdQuest.java
@@ -6,7 +6,8 @@ import foxz.commandhelper.annotations.SubCommand;
import foxz.commandhelper.permissions.OpOnly;
import foxz.commandhelper.permissions.ParamCheck;
import kamkeel.npcs.controllers.SyncController;
-import kamkeel.npcs.network.PacketUtil;
+import kamkeel.npcs.network.packets.data.AchievementPacket;
+import kamkeel.npcs.network.packets.data.ChatAlertPacket;
import net.minecraft.entity.player.EntityPlayerMP;
import noppes.npcs.controllers.QuestController;
import noppes.npcs.controllers.data.PlayerData;
@@ -57,8 +58,8 @@ public class CmdQuest extends ChMcLogger{
playerdata.questData.activeQuests.put(questid, questdata);
playerdata.save();
if(playerdata.player != null){
- PacketUtil.sendAchievement((EntityPlayerMP) playerdata.player, false, "quest.newquest", quest.title);
- PacketUtil.sendChatAlert((EntityPlayerMP) playerdata.player, "quest.newquest", ": ", quest.title);
+ AchievementPacket.sendAchievement((EntityPlayerMP) playerdata.player, false, "quest.newquest", quest.title);
+ ChatAlertPacket.sendChatAlert((EntityPlayerMP) playerdata.player, "quest.newquest", ": ", quest.title);
}
playerdata.updateClient = true;
}
diff --git a/src/main/java/kamkeel/npcs/command/QuestCategoryCommand.java b/src/main/java/kamkeel/npcs/command/QuestCategoryCommand.java
index b47b14e78..9e3e238fd 100644
--- a/src/main/java/kamkeel/npcs/command/QuestCategoryCommand.java
+++ b/src/main/java/kamkeel/npcs/command/QuestCategoryCommand.java
@@ -1,6 +1,7 @@
package kamkeel.npcs.command;
-import kamkeel.npcs.network.PacketUtil;
+import kamkeel.npcs.network.packets.data.AchievementPacket;
+import kamkeel.npcs.network.packets.data.ChatAlertPacket;
import net.minecraft.command.CommandException;
import net.minecraft.command.ICommandSender;
import net.minecraft.entity.player.EntityPlayerMP;
@@ -92,8 +93,8 @@ public class QuestCategoryCommand extends CommandKamkeelBase {
playerdata.questData.finishedQuests.put(quest.id, sender.getEntityWorld().getTotalWorldTime());
if(playerdata.player != null){
- PacketUtil.sendAchievement((EntityPlayerMP) playerdata.player, false, "quest.completed", quest.title);
- PacketUtil.sendChatAlert((EntityPlayerMP) playerdata.player, "quest.completed", ": ", quest.title);
+ AchievementPacket.sendAchievement((EntityPlayerMP) playerdata.player, false, "quest.completed", quest.title);
+ ChatAlertPacket.sendChatAlert((EntityPlayerMP) playerdata.player, "quest.completed", ": ", quest.title);
}
count++;
}
@@ -184,8 +185,8 @@ public class QuestCategoryCommand extends CommandKamkeelBase {
count++;
if(playerdata.player != null && questData.sendAlerts){
- PacketUtil.sendAchievement((EntityPlayerMP) playerdata.player, false, "quest.newquest", quest.title);
- PacketUtil.sendChatAlert((EntityPlayerMP) playerdata.player, "quest.newquest", ": ", quest.title);
+ AchievementPacket.sendAchievement((EntityPlayerMP) playerdata.player, false, "quest.newquest", quest.title);
+ ChatAlertPacket.sendChatAlert((EntityPlayerMP) playerdata.player, "quest.newquest", ": ", quest.title);
}
}
}
diff --git a/src/main/java/kamkeel/npcs/command/QuestCommand.java b/src/main/java/kamkeel/npcs/command/QuestCommand.java
index 644b64ddc..7ac9b1fcd 100644
--- a/src/main/java/kamkeel/npcs/command/QuestCommand.java
+++ b/src/main/java/kamkeel/npcs/command/QuestCommand.java
@@ -1,7 +1,8 @@
package kamkeel.npcs.command;
import kamkeel.npcs.controllers.SyncController;
-import kamkeel.npcs.network.PacketUtil;
+import kamkeel.npcs.network.packets.data.AchievementPacket;
+import kamkeel.npcs.network.packets.data.ChatAlertPacket;
import net.minecraft.command.CommandException;
import net.minecraft.command.ICommandSender;
import net.minecraft.entity.player.EntityPlayer;
@@ -64,8 +65,8 @@ public class QuestCommand extends CommandKamkeelBase {
playerdata.questData.activeQuests.put(questid, questdata);
playerdata.save();
if(playerdata.player != null && questdata.sendAlerts){
- PacketUtil.sendAchievement((EntityPlayerMP) playerdata.player, false, "quest.newquest", quest.title);
- PacketUtil.sendChatAlert((EntityPlayerMP) playerdata.player, "quest.newquest", ": ", quest.title);
+ AchievementPacket.sendAchievement((EntityPlayerMP) playerdata.player, false, "quest.newquest", quest.title);
+ ChatAlertPacket.sendChatAlert((EntityPlayerMP) playerdata.player, "quest.newquest", ": ", quest.title);
}
playerdata.updateClient = true;
sendResult(sender, String.format("Started Quest \u00A7e%d\u00A77 for Player '\u00A7b%s\u00A77'", questid, playerdata.playername));
@@ -110,8 +111,8 @@ public class QuestCommand extends CommandKamkeelBase {
playerdata.save();
if(playerdata.player != null){
- PacketUtil.sendAchievement((EntityPlayerMP) playerdata.player, false, "quest.completed", quest.title);
- PacketUtil.sendChatAlert((EntityPlayerMP) playerdata.player, "quest.completed", ": ", quest.title);
+ AchievementPacket.sendAchievement((EntityPlayerMP) playerdata.player, false, "quest.completed", quest.title);
+ ChatAlertPacket.sendChatAlert((EntityPlayerMP) playerdata.player, "quest.completed", ": ", quest.title);
}
playerdata.updateClient = true;
sendResult(sender, String.format("Finished Quest \u00A7e%d\u00A77 for Player '\u00A7b%s\u00A77'", questid, playerdata.playername));
diff --git a/src/main/java/kamkeel/npcs/controllers/SyncController.java b/src/main/java/kamkeel/npcs/controllers/SyncController.java
index 4d5397f7e..a98a10755 100644
--- a/src/main/java/kamkeel/npcs/controllers/SyncController.java
+++ b/src/main/java/kamkeel/npcs/controllers/SyncController.java
@@ -4,7 +4,7 @@ import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import kamkeel.npcs.addon.DBCAddon;
import kamkeel.npcs.network.PacketHandler;
-import kamkeel.npcs.network.packets.client.large.LargeSyncPacket;
+import kamkeel.npcs.network.packets.data.large.SyncPacket;
import kamkeel.npcs.network.enums.EnumSyncAction;
import kamkeel.npcs.network.enums.EnumSyncType;
import net.minecraft.entity.player.EntityPlayerMP;
@@ -23,7 +23,7 @@ public class SyncController {
public static void syncPlayer(EntityPlayerMP player){
// 1) Factions
- PacketHandler.Instance.sendToPlayer(new LargeSyncPacket(
+ PacketHandler.Instance.sendToPlayer(new SyncPacket(
EnumSyncType.FACTION,
EnumSyncAction.RELOAD,
-1,
@@ -31,7 +31,7 @@ public class SyncController {
), player);
// 2) Dialog Categories
- PacketHandler.Instance.sendToPlayer(new LargeSyncPacket(
+ PacketHandler.Instance.sendToPlayer(new SyncPacket(
EnumSyncType.DIALOG_CATEGORY,
EnumSyncAction.RELOAD,
-1,
@@ -39,7 +39,7 @@ public class SyncController {
), player);
// 3) Quest Categories
- PacketHandler.Instance.sendToPlayer(new LargeSyncPacket(
+ PacketHandler.Instance.sendToPlayer(new SyncPacket(
EnumSyncType.QUEST_CATEGORY,
EnumSyncAction.RELOAD,
-1,
@@ -47,7 +47,7 @@ public class SyncController {
), player);
// 4) Workbench Recipes
- PacketHandler.Instance.sendToPlayer(new LargeSyncPacket(
+ PacketHandler.Instance.sendToPlayer(new SyncPacket(
EnumSyncType.WORKBENCH_RECIPES,
EnumSyncAction.RELOAD,
-1,
@@ -55,7 +55,7 @@ public class SyncController {
), player);
// 5) Carpentry Recipes
- PacketHandler.Instance.sendToPlayer(new LargeSyncPacket(
+ PacketHandler.Instance.sendToPlayer(new SyncPacket(
EnumSyncType.CARPENTRY_RECIPES,
EnumSyncAction.RELOAD,
-1,
@@ -140,14 +140,14 @@ public class SyncController {
PlayerData data = PlayerData.get(player);
if(data != null){
if(update){
- PacketHandler.Instance.sendToPlayer(new LargeSyncPacket(
+ PacketHandler.Instance.sendToPlayer(new SyncPacket(
EnumSyncType.PLAYERDATA,
EnumSyncAction.UPDATE,
-1,
data.getSyncNBT())
, player);
} else {
- PacketHandler.Instance.sendToPlayer(new LargeSyncPacket(
+ PacketHandler.Instance.sendToPlayer(new SyncPacket(
EnumSyncType.PLAYERDATA,
EnumSyncAction.RELOAD,
-1,
@@ -157,7 +157,7 @@ public class SyncController {
}
public static void syncRemove(EnumSyncType enumSyncType, int id){
- PacketHandler.Instance.sendToAll(new LargeSyncPacket(
+ PacketHandler.Instance.sendToAll(new SyncPacket(
enumSyncType,
EnumSyncAction.REMOVE,
id,
@@ -166,7 +166,7 @@ public class SyncController {
}
public static void syncAllDialogs() {
- PacketHandler.Instance.sendToAll(new LargeSyncPacket(
+ PacketHandler.Instance.sendToAll(new SyncPacket(
EnumSyncType.DIALOG_CATEGORY,
EnumSyncAction.RELOAD,
-1,
@@ -175,7 +175,7 @@ public class SyncController {
}
public static void syncAllQuests() {
- PacketHandler.Instance.sendToAll(new LargeSyncPacket(
+ PacketHandler.Instance.sendToAll(new SyncPacket(
EnumSyncType.QUEST_CATEGORY,
EnumSyncAction.RELOAD,
-1,
@@ -184,7 +184,7 @@ public class SyncController {
}
public static void syncAllWorkbenchRecipes() {
- PacketHandler.Instance.sendToAll(new LargeSyncPacket(
+ PacketHandler.Instance.sendToAll(new SyncPacket(
EnumSyncType.WORKBENCH_RECIPES,
EnumSyncAction.RELOAD,
-1,
@@ -193,7 +193,7 @@ public class SyncController {
}
public static void syncAllCarpentryRecipes() {
- PacketHandler.Instance.sendToAll(new LargeSyncPacket(
+ PacketHandler.Instance.sendToAll(new SyncPacket(
EnumSyncType.CARPENTRY_RECIPES,
EnumSyncAction.RELOAD,
-1,
@@ -402,7 +402,7 @@ public class SyncController {
}
public static void syncUpdate(EnumSyncType type, int cat, NBTTagCompound compound) {
- PacketHandler.Instance.sendToAll(new LargeSyncPacket(
+ PacketHandler.Instance.sendToAll(new SyncPacket(
type,
EnumSyncAction.UPDATE,
cat,
diff --git a/src/main/java/kamkeel/npcs/network/PacketHandler.java b/src/main/java/kamkeel/npcs/network/PacketHandler.java
index e1f6e0407..d3fcda649 100644
--- a/src/main/java/kamkeel/npcs/network/PacketHandler.java
+++ b/src/main/java/kamkeel/npcs/network/PacketHandler.java
@@ -7,11 +7,11 @@ import cpw.mods.fml.common.network.NetworkRegistry;
import cpw.mods.fml.common.network.internal.FMLProxyPacket;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.enums.EnumPacketType;
-import kamkeel.npcs.network.packets.client.*;
-import kamkeel.npcs.network.packets.client.gui.*;
-import kamkeel.npcs.network.packets.client.large.*;
-import kamkeel.npcs.network.packets.client.npc.*;
-import kamkeel.npcs.network.packets.client.script.*;
+import kamkeel.npcs.network.packets.data.*;
+import kamkeel.npcs.network.packets.data.gui.*;
+import kamkeel.npcs.network.packets.data.large.*;
+import kamkeel.npcs.network.packets.data.npc.*;
+import kamkeel.npcs.network.packets.data.script.*;
import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.EntityPlayerMP;
@@ -27,17 +27,17 @@ public final class PacketHandler {
// Channels
public Map channels = new Hashtable<>();
- public static final PacketChannel INFO_PACKET = new PacketChannel("CNPC+|Info", EnumPacketType.INFO);
- public static final PacketChannel DATA_PACKET = new PacketChannel("CNPC+|Data", EnumPacketType.DATA);
- public static final PacketChannel CLIENT_PACKET = new PacketChannel("CNPC+|Client", EnumPacketType.CLIENT);
+ public static final PacketChannel PERMISSION_PACKET = new PacketChannel("CNPC+|Perm", EnumPacketType.PERMISSION);
+ public static final PacketChannel PLAYER_PACKET = new PacketChannel("CNPC+|Player", EnumPacketType.PLAYER);
+ public static final PacketChannel DATA_PACKET = new PacketChannel("CNPC+|Data", EnumPacketType.DATA);
private static final List packetChannels = new ArrayList<>();
public PacketHandler() {
// Register Channels
- packetChannels.add(INFO_PACKET);
+ packetChannels.add(PERMISSION_PACKET);
+ packetChannels.add(PLAYER_PACKET);
packetChannels.add(DATA_PACKET);
- packetChannels.add(CLIENT_PACKET);
this.registerChannels();
this.registerClientPackets();
@@ -45,53 +45,53 @@ public final class PacketHandler {
public void registerClientPackets(){
// Client Packets
- CLIENT_PACKET.registerPacket(new AchievementPacket());
- CLIENT_PACKET.registerPacket(new ChatAlertPacket());
- CLIENT_PACKET.registerPacket(new ChatBubblePacket());
- CLIENT_PACKET.registerPacket(new ConfigCommandPacket());
- CLIENT_PACKET.registerPacket(new DisableMouseInputPacket());
- CLIENT_PACKET.registerPacket(new MarkDataPacket());
- CLIENT_PACKET.registerPacket(new OverlayQuestTrackingPacket());
- CLIENT_PACKET.registerPacket(new ParticlePacket());
- CLIENT_PACKET.registerPacket(new PlayerUpdateSkinOverlaysPacket());
- CLIENT_PACKET.registerPacket(new QuestCompletionPacket());
- CLIENT_PACKET.registerPacket(new ScrollSelectedPacket());
- CLIENT_PACKET.registerPacket(new SoundManagementPacket());
- CLIENT_PACKET.registerPacket(new SwingPlayerArmPacket());
- CLIENT_PACKET.registerPacket(new UpdateAnimationsPacket());
- CLIENT_PACKET.registerPacket(new VillagerListPacket());
+ DATA_PACKET.registerPacket(new AchievementPacket());
+ DATA_PACKET.registerPacket(new ChatAlertPacket());
+ DATA_PACKET.registerPacket(new ChatBubblePacket());
+ DATA_PACKET.registerPacket(new ConfigCommandPacket());
+ DATA_PACKET.registerPacket(new DisableMouseInputPacket());
+ DATA_PACKET.registerPacket(new MarkDataPacket());
+ DATA_PACKET.registerPacket(new OverlayQuestTrackingPacket());
+ DATA_PACKET.registerPacket(new ParticlePacket());
+ DATA_PACKET.registerPacket(new PlayerUpdateSkinOverlaysPacket());
+ DATA_PACKET.registerPacket(new QuestCompletionPacket());
+ DATA_PACKET.registerPacket(new ScrollSelectedPacket());
+ DATA_PACKET.registerPacket(new SoundManagementPacket());
+ DATA_PACKET.registerPacket(new SwingPlayerArmPacket());
+ DATA_PACKET.registerPacket(new UpdateAnimationsPacket());
+ DATA_PACKET.registerPacket(new VillagerListPacket());
// Client | GUI Packets
- CLIENT_PACKET.registerPacket(new GuiClosePacket());
- CLIENT_PACKET.registerPacket(new GuiOpenPacket());
- CLIENT_PACKET.registerPacket(new GuiErrorPacket());
- CLIENT_PACKET.registerPacket(new GuiRedstonePacket());
- CLIENT_PACKET.registerPacket(new GuiTeleporterPacket());
- CLIENT_PACKET.registerPacket(new GuiWaypointPacket());
- CLIENT_PACKET.registerPacket(new IsGuiOpenPacket());
- CLIENT_PACKET.registerPacket(new GuiOpenBookPacket());
+ DATA_PACKET.registerPacket(new GuiClosePacket());
+ DATA_PACKET.registerPacket(new GuiOpenPacket());
+ DATA_PACKET.registerPacket(new GuiErrorPacket());
+ DATA_PACKET.registerPacket(new GuiRedstonePacket());
+ DATA_PACKET.registerPacket(new GuiTeleporterPacket());
+ DATA_PACKET.registerPacket(new GuiWaypointPacket());
+ DATA_PACKET.registerPacket(new IsGuiOpenPacket());
+ DATA_PACKET.registerPacket(new GuiOpenBookPacket());
// Client | NPC Packets
- CLIENT_PACKET.registerPacket(new DeleteNpcPacket());
- CLIENT_PACKET.registerPacket(new EditNpcPacket());
- CLIENT_PACKET.registerPacket(new UpdateNpcPacket());
- CLIENT_PACKET.registerPacket(new DialogPacket());
- CLIENT_PACKET.registerPacket(new RolePacket());
- CLIENT_PACKET.registerPacket(new WeaponNpcPacket());
+ DATA_PACKET.registerPacket(new DeleteNpcPacket());
+ DATA_PACKET.registerPacket(new EditNpcPacket());
+ DATA_PACKET.registerPacket(new UpdateNpcPacket());
+ DATA_PACKET.registerPacket(new DialogPacket());
+ DATA_PACKET.registerPacket(new RolePacket());
+ DATA_PACKET.registerPacket(new WeaponNpcPacket());
// Client | Script Packets
- CLIENT_PACKET.registerPacket(new ScriptedParticlePacket());
- CLIENT_PACKET.registerPacket(new ScriptOverlayClosePacket());
- CLIENT_PACKET.registerPacket(new ScriptOverlayDataPacket());
+ DATA_PACKET.registerPacket(new ScriptedParticlePacket());
+ DATA_PACKET.registerPacket(new ScriptOverlayClosePacket());
+ DATA_PACKET.registerPacket(new ScriptOverlayDataPacket());
// Client | Large Packets
- CLIENT_PACKET.registerPacket(new LargeClonerPacket());
- CLIENT_PACKET.registerPacket(new LargeScrollGroupPacket());
- CLIENT_PACKET.registerPacket(new LargeScrollDataPacket());
- CLIENT_PACKET.registerPacket(new LargeScrollListPacket());
- CLIENT_PACKET.registerPacket(new LargeSyncPacket());
- CLIENT_PACKET.registerPacket(new LargeGuiDataPacket());
- CLIENT_PACKET.registerPacket(new LargePartyDataPacket());
+ DATA_PACKET.registerPacket(new ClonerPacket());
+ DATA_PACKET.registerPacket(new ScrollGroupPacket());
+ DATA_PACKET.registerPacket(new ScrollDataPacket());
+ DATA_PACKET.registerPacket(new ScrollListPacket());
+ DATA_PACKET.registerPacket(new SyncPacket());
+ DATA_PACKET.registerPacket(new GuiDataPacket());
+ DATA_PACKET.registerPacket(new PartyDataPacket());
}
private void registerChannels() {
diff --git a/src/main/java/kamkeel/npcs/network/PacketUtil.java b/src/main/java/kamkeel/npcs/network/PacketUtil.java
index d108e7517..86823f7fd 100644
--- a/src/main/java/kamkeel/npcs/network/PacketUtil.java
+++ b/src/main/java/kamkeel/npcs/network/PacketUtil.java
@@ -1,80 +1,6 @@
package kamkeel.npcs.network;
-import kamkeel.npcs.network.packets.client.ChatAlertPacket;
-import kamkeel.npcs.network.packets.client.AchievementPacket;
-import kamkeel.npcs.network.packets.client.QuestCompletionPacket;
-import kamkeel.npcs.network.packets.client.ScrollSelectedPacket;
-import kamkeel.npcs.network.packets.client.gui.GuiClosePacket;
-import kamkeel.npcs.network.packets.client.large.*;
-import kamkeel.npcs.network.packets.client.gui.GuiErrorPacket;
-import kamkeel.npcs.network.packets.client.gui.GuiOpenPacket;
-import net.minecraft.entity.player.EntityPlayerMP;
-import net.minecraft.nbt.NBTTagCompound;
-import noppes.npcs.constants.EnumGuiType;
-
-import java.util.List;
-import java.util.Map;
-
public class PacketUtil {
- public static void sendScrollData(EntityPlayerMP player, Map map) {
- LargeScrollDataPacket packet = new LargeScrollDataPacket(map);
- PacketHandler.Instance.sendToPlayer(packet, player);
- }
- public static void sendScrollGroup(EntityPlayerMP player, Map map){
- LargeScrollGroupPacket packet = new LargeScrollGroupPacket(map);
- PacketHandler.Instance.sendToPlayer(packet, player);
- }
-
- public static void sendList(EntityPlayerMP player, List list){
- LargeScrollListPacket packet = new LargeScrollListPacket(list);
- PacketHandler.Instance.sendToPlayer(packet, player);
- }
-
- public static void sendChatAlert(EntityPlayerMP playerMP, final Object... obs){
- ChatAlertPacket packet = new ChatAlertPacket(obs);
- PacketHandler.Instance.sendToPlayer(packet, playerMP);
- }
-
- public static void sendAchievement(EntityPlayerMP playerMP, boolean isParty, String description, String message){
- AchievementPacket packet = new AchievementPacket(isParty, description, message);
- PacketHandler.Instance.sendToPlayer(packet, playerMP);
- }
-
- public static void openGUI(EntityPlayerMP playerMP, EnumGuiType type, int x, int y, int z){
- GuiOpenPacket packet = new GuiOpenPacket(type, x, y, z);
- PacketHandler.Instance.sendToPlayer(packet, playerMP);
- }
-
- public static void closeGUI(EntityPlayerMP playerMP, int closeCode, NBTTagCompound compound){
- GuiClosePacket packet = new GuiClosePacket(closeCode, compound);
- PacketHandler.Instance.sendToPlayer(packet, playerMP);
- }
-
- public static void errorGUI(EntityPlayerMP playerMP, int closeCode, NBTTagCompound compound){
- GuiErrorPacket packet = new GuiErrorPacket(closeCode, compound);
- PacketHandler.Instance.sendToPlayer(packet, playerMP);
- }
-
- public static void sendGuiData(EntityPlayerMP playerMP, NBTTagCompound compound){
- LargeGuiDataPacket packet = new LargeGuiDataPacket(compound);
- PacketHandler.Instance.sendToPlayer(packet, playerMP);
- }
-
- public static void sendPartyData(EntityPlayerMP playerMP, NBTTagCompound compound){
- LargePartyDataPacket packet = new LargePartyDataPacket(compound);
- PacketHandler.Instance.sendToPlayer(packet, playerMP);
- }
-
-
- public static void sendQuestComplete(EntityPlayerMP playerMP, NBTTagCompound compound){
- QuestCompletionPacket packet = new QuestCompletionPacket(compound);
- PacketHandler.Instance.sendToPlayer(packet, playerMP);
- }
-
- public static void setSelectedList(EntityPlayerMP playerMP, String item){
- ScrollSelectedPacket packet = new ScrollSelectedPacket(item);
- PacketHandler.Instance.sendToPlayer(packet, playerMP);
- }
}
diff --git a/src/main/java/kamkeel/npcs/network/enums/EnumPacketType.java b/src/main/java/kamkeel/npcs/network/enums/EnumPacketType.java
index 83f9049f7..7c65e5df3 100644
--- a/src/main/java/kamkeel/npcs/network/enums/EnumPacketType.java
+++ b/src/main/java/kamkeel/npcs/network/enums/EnumPacketType.java
@@ -1,5 +1,8 @@
package kamkeel.npcs.network.enums;
public enum EnumPacketType {
- INFO, DATA, CLIENT
+ PERMISSION,
+ PLAYER,
+ DATA,
+ INFO
}
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/AchievementPacket.java b/src/main/java/kamkeel/npcs/network/packets/data/AchievementPacket.java
similarity index 85%
rename from src/main/java/kamkeel/npcs/network/packets/client/AchievementPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/data/AchievementPacket.java
index 253234780..f46cca579 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/AchievementPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/data/AchievementPacket.java
@@ -1,4 +1,4 @@
-package kamkeel.npcs.network.packets.client;
+package kamkeel.npcs.network.packets.data;
import cpw.mods.fml.common.ObfuscationReflectionHelper;
import cpw.mods.fml.relauncher.Side;
@@ -12,11 +12,11 @@ import kamkeel.npcs.util.ByteBufUtils;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.achievement.GuiAchievement;
import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.init.Items;
import net.minecraft.stats.Achievement;
import net.minecraft.util.StatCollector;
import noppes.npcs.CustomItems;
-import noppes.npcs.CustomNpcs;
import noppes.npcs.client.MessageAchievement;
import noppes.npcs.config.ConfigClient;
@@ -37,6 +37,11 @@ public final class AchievementPacket extends AbstractPacket {
this.message = message;
}
+ public static void sendAchievement(EntityPlayerMP playerMP, boolean isParty, String description, String message){
+ AchievementPacket packet = new AchievementPacket(isParty, description, message);
+ PacketHandler.Instance.sendToPlayer(packet, playerMP);
+ }
+
@Override
public Enum getType() {
return EnumClientPacket.ACHIEVEMENT;
@@ -44,7 +49,7 @@ public final class AchievementPacket extends AbstractPacket {
@Override
public PacketChannel getChannel() {
- return PacketHandler.CLIENT_PACKET;
+ return PacketHandler.DATA_PACKET;
}
@Override
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/ChatAlertPacket.java b/src/main/java/kamkeel/npcs/network/packets/data/ChatAlertPacket.java
similarity index 81%
rename from src/main/java/kamkeel/npcs/network/packets/client/ChatAlertPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/data/ChatAlertPacket.java
index de17c3f37..38ba7adee 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/ChatAlertPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/data/ChatAlertPacket.java
@@ -1,4 +1,4 @@
-package kamkeel.npcs.network.packets.client;
+package kamkeel.npcs.network.packets.data;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
@@ -9,6 +9,7 @@ import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.enums.EnumClientPacket;
import kamkeel.npcs.util.ByteBufUtils;
import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.util.ChatComponentTranslation;
import noppes.npcs.config.ConfigClient;
@@ -25,6 +26,11 @@ public final class ChatAlertPacket extends AbstractPacket {
this.objects = obs;
}
+ public static void sendChatAlert(EntityPlayerMP playerMP, final Object... obs){
+ ChatAlertPacket packet = new ChatAlertPacket(obs);
+ PacketHandler.Instance.sendToPlayer(packet, playerMP);
+ }
+
@Override
public Enum getType() {
return EnumClientPacket.CHAT_ALERT;
@@ -32,7 +38,7 @@ public final class ChatAlertPacket extends AbstractPacket {
@Override
public PacketChannel getChannel() {
- return PacketHandler.CLIENT_PACKET;
+ return PacketHandler.DATA_PACKET;
}
@Override
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/ChatBubblePacket.java b/src/main/java/kamkeel/npcs/network/packets/data/ChatBubblePacket.java
similarity index 94%
rename from src/main/java/kamkeel/npcs/network/packets/client/ChatBubblePacket.java
rename to src/main/java/kamkeel/npcs/network/packets/data/ChatBubblePacket.java
index 3920bc337..206d75d23 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/ChatBubblePacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/data/ChatBubblePacket.java
@@ -1,4 +1,4 @@
-package kamkeel.npcs.network.packets.client;
+package kamkeel.npcs.network.packets.data;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
@@ -12,7 +12,6 @@ import net.minecraft.client.Minecraft;
import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.util.ChatComponentTranslation;
-import noppes.npcs.CustomNpcs;
import noppes.npcs.NoppesStringUtils;
import noppes.npcs.client.RenderChatMessages;
import noppes.npcs.entity.EntityNPCInterface;
@@ -41,7 +40,7 @@ public final class ChatBubblePacket extends AbstractPacket {
@Override
public PacketChannel getChannel() {
- return PacketHandler.CLIENT_PACKET;
+ return PacketHandler.DATA_PACKET;
}
@Override
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/large/LargeClonerPacket.java b/src/main/java/kamkeel/npcs/network/packets/data/ClonerPacket.java
similarity index 87%
rename from src/main/java/kamkeel/npcs/network/packets/client/large/LargeClonerPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/data/ClonerPacket.java
index 5ad8d3857..a64d592af 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/large/LargeClonerPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/data/ClonerPacket.java
@@ -1,4 +1,4 @@
-package kamkeel.npcs.network.packets.client.large;
+package kamkeel.npcs.network.packets.data;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
@@ -16,14 +16,14 @@ import noppes.npcs.client.gui.GuiNpcMobSpawnerAdd;
import java.io.IOException;
-public final class LargeClonerPacket extends LargeAbstractPacket {
+public final class ClonerPacket extends LargeAbstractPacket {
public static final String packetName = "Client|Clone";
private NBTTagCompound compound;
- public LargeClonerPacket() {}
+ public ClonerPacket() {}
- public LargeClonerPacket(NBTTagCompound comp){
+ public ClonerPacket(NBTTagCompound comp){
this.compound = comp;
}
@@ -34,7 +34,7 @@ public final class LargeClonerPacket extends LargeAbstractPacket {
@Override
public PacketChannel getChannel() {
- return PacketHandler.CLIENT_PACKET;
+ return PacketHandler.DATA_PACKET;
}
@SideOnly(Side.CLIENT)
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/ConfigCommandPacket.java b/src/main/java/kamkeel/npcs/network/packets/data/ConfigCommandPacket.java
similarity index 96%
rename from src/main/java/kamkeel/npcs/network/packets/client/ConfigCommandPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/data/ConfigCommandPacket.java
index b88f11929..7f5eb45a7 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/ConfigCommandPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/data/ConfigCommandPacket.java
@@ -1,4 +1,4 @@
-package kamkeel.npcs.network.packets.client;
+package kamkeel.npcs.network.packets.data;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
@@ -37,7 +37,7 @@ public final class ConfigCommandPacket extends AbstractPacket {
@Override
public PacketChannel getChannel() {
- return PacketHandler.CLIENT_PACKET;
+ return PacketHandler.DATA_PACKET;
}
@Override
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/DisableMouseInputPacket.java b/src/main/java/kamkeel/npcs/network/packets/data/DisableMouseInputPacket.java
similarity index 95%
rename from src/main/java/kamkeel/npcs/network/packets/client/DisableMouseInputPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/data/DisableMouseInputPacket.java
index 6df5e1d9b..305868eed 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/DisableMouseInputPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/data/DisableMouseInputPacket.java
@@ -1,4 +1,4 @@
-package kamkeel.npcs.network.packets.client;
+package kamkeel.npcs.network.packets.data;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
@@ -33,7 +33,7 @@ public final class DisableMouseInputPacket extends AbstractPacket {
@Override
public PacketChannel getChannel() {
- return PacketHandler.CLIENT_PACKET;
+ return PacketHandler.DATA_PACKET;
}
@Override
diff --git a/src/main/java/kamkeel/npcs/network/packets/LoginPacket.java b/src/main/java/kamkeel/npcs/network/packets/data/LoginPacket.java
similarity index 87%
rename from src/main/java/kamkeel/npcs/network/packets/LoginPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/data/LoginPacket.java
index c27cbcad4..58a0460bc 100644
--- a/src/main/java/kamkeel/npcs/network/packets/LoginPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/data/LoginPacket.java
@@ -1,4 +1,4 @@
-package kamkeel.npcs.network.packets;
+package kamkeel.npcs.network.packets.data;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.AbstractPacket;
@@ -11,7 +11,7 @@ import net.minecraft.entity.player.EntityPlayer;
import java.io.IOException;
public final class LoginPacket extends AbstractPacket {
- public static final String packetName = "CNPC+|LoginPacket";
+ public static final String packetName = "CNPC+|Login";
public LoginPacket() {}
@@ -23,7 +23,7 @@ public final class LoginPacket extends AbstractPacket {
@Override
public PacketChannel getChannel() {
- return PacketHandler.INFO_PACKET;
+ return PacketHandler.DATA_PACKET;
}
@Override
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/MarkDataPacket.java b/src/main/java/kamkeel/npcs/network/packets/data/MarkDataPacket.java
similarity index 92%
rename from src/main/java/kamkeel/npcs/network/packets/client/MarkDataPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/data/MarkDataPacket.java
index 193ee560f..009b1afa3 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/MarkDataPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/data/MarkDataPacket.java
@@ -1,4 +1,4 @@
-package kamkeel.npcs.network.packets.client;
+package kamkeel.npcs.network.packets.data;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
@@ -11,8 +11,6 @@ import kamkeel.npcs.util.ByteBufUtils;
import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.nbt.NBTTagCompound;
-import noppes.npcs.CustomNpcs;
-import noppes.npcs.Server;
import noppes.npcs.controllers.data.MarkData;
import noppes.npcs.entity.EntityNPCInterface;
@@ -38,7 +36,7 @@ public final class MarkDataPacket extends AbstractPacket {
@Override
public PacketChannel getChannel() {
- return PacketHandler.CLIENT_PACKET;
+ return PacketHandler.DATA_PACKET;
}
@Override
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/OverlayQuestTrackingPacket.java b/src/main/java/kamkeel/npcs/network/packets/data/OverlayQuestTrackingPacket.java
similarity index 95%
rename from src/main/java/kamkeel/npcs/network/packets/client/OverlayQuestTrackingPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/data/OverlayQuestTrackingPacket.java
index eb75f6e13..4ea6f9151 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/OverlayQuestTrackingPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/data/OverlayQuestTrackingPacket.java
@@ -1,4 +1,4 @@
-package kamkeel.npcs.network.packets.client;
+package kamkeel.npcs.network.packets.data;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
@@ -34,7 +34,7 @@ public final class OverlayQuestTrackingPacket extends AbstractPacket {
@Override
public PacketChannel getChannel() {
- return PacketHandler.CLIENT_PACKET;
+ return PacketHandler.DATA_PACKET;
}
@Override
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/ParticlePacket.java b/src/main/java/kamkeel/npcs/network/packets/data/ParticlePacket.java
similarity index 96%
rename from src/main/java/kamkeel/npcs/network/packets/client/ParticlePacket.java
rename to src/main/java/kamkeel/npcs/network/packets/data/ParticlePacket.java
index 3a0475a86..4b885fb69 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/ParticlePacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/data/ParticlePacket.java
@@ -1,4 +1,4 @@
-package kamkeel.npcs.network.packets.client;
+package kamkeel.npcs.network.packets.data;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
@@ -47,7 +47,7 @@ public final class ParticlePacket extends AbstractPacket {
@Override
public PacketChannel getChannel() {
- return PacketHandler.CLIENT_PACKET;
+ return PacketHandler.DATA_PACKET;
}
@Override
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/PlayerUpdateSkinOverlaysPacket.java b/src/main/java/kamkeel/npcs/network/packets/data/PlayerUpdateSkinOverlaysPacket.java
similarity index 92%
rename from src/main/java/kamkeel/npcs/network/packets/client/PlayerUpdateSkinOverlaysPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/data/PlayerUpdateSkinOverlaysPacket.java
index e92f9c75b..7d04f43b6 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/PlayerUpdateSkinOverlaysPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/data/PlayerUpdateSkinOverlaysPacket.java
@@ -1,4 +1,4 @@
-package kamkeel.npcs.network.packets.client;
+package kamkeel.npcs.network.packets.data;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
@@ -11,8 +11,6 @@ import kamkeel.npcs.util.ByteBufUtils;
import net.minecraft.client.Minecraft;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.nbt.NBTTagCompound;
-import noppes.npcs.CustomNpcs;
-import noppes.npcs.Server;
import noppes.npcs.client.NoppesUtil;
import java.io.IOException;
@@ -37,7 +35,7 @@ public final class PlayerUpdateSkinOverlaysPacket extends AbstractPacket {
@Override
public PacketChannel getChannel() {
- return PacketHandler.CLIENT_PACKET;
+ return PacketHandler.DATA_PACKET;
}
@Override
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/QuestCompletionPacket.java b/src/main/java/kamkeel/npcs/network/packets/data/QuestCompletionPacket.java
similarity index 77%
rename from src/main/java/kamkeel/npcs/network/packets/client/QuestCompletionPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/data/QuestCompletionPacket.java
index cf8178bd4..75bded4ad 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/QuestCompletionPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/data/QuestCompletionPacket.java
@@ -1,4 +1,4 @@
-package kamkeel.npcs.network.packets.client;
+package kamkeel.npcs.network.packets.data;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
@@ -9,9 +9,8 @@ import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.enums.EnumClientPacket;
import kamkeel.npcs.util.ByteBufUtils;
import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.nbt.NBTTagCompound;
-import noppes.npcs.CustomNpcs;
-import noppes.npcs.Server;
import noppes.npcs.client.NoppesUtil;
import java.io.IOException;
@@ -27,6 +26,11 @@ public final class QuestCompletionPacket extends AbstractPacket {
this.compound = compound;
}
+ public static void sendQuestComplete(EntityPlayerMP playerMP, NBTTagCompound compound){
+ QuestCompletionPacket packet = new QuestCompletionPacket(compound);
+ PacketHandler.Instance.sendToPlayer(packet, playerMP);
+ }
+
@Override
public Enum getType() {
return EnumClientPacket.QUEST_COMPLETION;
@@ -34,7 +38,7 @@ public final class QuestCompletionPacket extends AbstractPacket {
@Override
public PacketChannel getChannel() {
- return PacketHandler.CLIENT_PACKET;
+ return PacketHandler.DATA_PACKET;
}
@Override
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/ScrollSelectedPacket.java b/src/main/java/kamkeel/npcs/network/packets/data/ScrollSelectedPacket.java
similarity index 80%
rename from src/main/java/kamkeel/npcs/network/packets/client/ScrollSelectedPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/data/ScrollSelectedPacket.java
index d91d4ca76..4b2382937 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/ScrollSelectedPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/data/ScrollSelectedPacket.java
@@ -1,4 +1,4 @@
-package kamkeel.npcs.network.packets.client;
+package kamkeel.npcs.network.packets.data;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
@@ -11,6 +11,7 @@ import kamkeel.npcs.util.ByteBufUtils;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.GuiScreen;
import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.entity.player.EntityPlayerMP;
import noppes.npcs.client.gui.util.IScrollData;
import java.io.IOException;
@@ -26,6 +27,11 @@ public final class ScrollSelectedPacket extends AbstractPacket {
this.selected = selected;
}
+ public static void setSelectedList(EntityPlayerMP playerMP, String item){
+ ScrollSelectedPacket packet = new ScrollSelectedPacket(item);
+ PacketHandler.Instance.sendToPlayer(packet, playerMP);
+ }
+
@Override
public Enum getType() {
return EnumClientPacket.SCROLL_SELECTED;
@@ -33,7 +39,7 @@ public final class ScrollSelectedPacket extends AbstractPacket {
@Override
public PacketChannel getChannel() {
- return PacketHandler.CLIENT_PACKET;
+ return PacketHandler.DATA_PACKET;
}
@Override
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/SoundManagementPacket.java b/src/main/java/kamkeel/npcs/network/packets/data/SoundManagementPacket.java
similarity index 97%
rename from src/main/java/kamkeel/npcs/network/packets/client/SoundManagementPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/data/SoundManagementPacket.java
index 8356b7397..7f36c8545 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/SoundManagementPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/data/SoundManagementPacket.java
@@ -1,4 +1,4 @@
-package kamkeel.npcs.network.packets.client;
+package kamkeel.npcs.network.packets.data;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
@@ -11,7 +11,6 @@ import kamkeel.npcs.network.enums.EnumSoundOperation;
import kamkeel.npcs.util.ByteBufUtils;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.nbt.NBTTagCompound;
-import noppes.npcs.Server;
import noppes.npcs.client.controllers.MusicController;
import noppes.npcs.client.controllers.ScriptClientSound;
import noppes.npcs.client.controllers.ScriptSoundController;
@@ -67,7 +66,7 @@ public final class SoundManagementPacket extends AbstractPacket {
@Override
public PacketChannel getChannel() {
- return PacketHandler.CLIENT_PACKET;
+ return PacketHandler.DATA_PACKET;
}
@Override
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/SwingPlayerArmPacket.java b/src/main/java/kamkeel/npcs/network/packets/data/SwingPlayerArmPacket.java
similarity index 89%
rename from src/main/java/kamkeel/npcs/network/packets/client/SwingPlayerArmPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/data/SwingPlayerArmPacket.java
index fa3978e34..85df80307 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/SwingPlayerArmPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/data/SwingPlayerArmPacket.java
@@ -1,4 +1,4 @@
-package kamkeel.npcs.network.packets.client;
+package kamkeel.npcs.network.packets.data;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
@@ -9,7 +9,6 @@ import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.client.Minecraft;
import net.minecraft.entity.player.EntityPlayer;
-import noppes.npcs.CustomNpcs;
import java.io.IOException;
@@ -25,7 +24,7 @@ public final class SwingPlayerArmPacket extends AbstractPacket {
@Override
public PacketChannel getChannel() {
- return PacketHandler.CLIENT_PACKET;
+ return PacketHandler.DATA_PACKET;
}
@Override
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/UpdateAnimationsPacket.java b/src/main/java/kamkeel/npcs/network/packets/data/UpdateAnimationsPacket.java
similarity index 95%
rename from src/main/java/kamkeel/npcs/network/packets/client/UpdateAnimationsPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/data/UpdateAnimationsPacket.java
index 81977a264..bb9deb78a 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/UpdateAnimationsPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/data/UpdateAnimationsPacket.java
@@ -1,4 +1,4 @@
-package kamkeel.npcs.network.packets.client;
+package kamkeel.npcs.network.packets.data;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
@@ -12,8 +12,6 @@ import net.minecraft.client.Minecraft;
import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.nbt.NBTTagCompound;
-import noppes.npcs.CustomNpcs;
-import noppes.npcs.Server;
import noppes.npcs.client.ClientCacheHandler;
import noppes.npcs.controllers.data.Animation;
import noppes.npcs.controllers.data.AnimationData;
@@ -41,7 +39,7 @@ public final class UpdateAnimationsPacket extends AbstractPacket {
@Override
public PacketChannel getChannel() {
- return PacketHandler.CLIENT_PACKET;
+ return PacketHandler.DATA_PACKET;
}
@Override
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/VillagerListPacket.java b/src/main/java/kamkeel/npcs/network/packets/data/VillagerListPacket.java
similarity index 92%
rename from src/main/java/kamkeel/npcs/network/packets/client/VillagerListPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/data/VillagerListPacket.java
index 2b56d4ffd..c798376c8 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/VillagerListPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/data/VillagerListPacket.java
@@ -1,4 +1,4 @@
-package kamkeel.npcs.network.packets.client;
+package kamkeel.npcs.network.packets.data;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
@@ -10,7 +10,6 @@ import kamkeel.npcs.network.enums.EnumClientPacket;
import kamkeel.npcs.util.ByteBufUtils;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.network.PacketBuffer;
-import noppes.npcs.CustomNpcs;
import noppes.npcs.ServerEventsHandler;
import net.minecraft.village.MerchantRecipeList;
@@ -34,7 +33,7 @@ public final class VillagerListPacket extends AbstractPacket {
@Override
public PacketChannel getChannel() {
- return PacketHandler.CLIENT_PACKET;
+ return PacketHandler.DATA_PACKET;
}
@Override
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiClosePacket.java b/src/main/java/kamkeel/npcs/network/packets/data/gui/GuiClosePacket.java
similarity index 82%
rename from src/main/java/kamkeel/npcs/network/packets/client/gui/GuiClosePacket.java
rename to src/main/java/kamkeel/npcs/network/packets/data/gui/GuiClosePacket.java
index cf1c75ee9..1d3780fcf 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiClosePacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/data/gui/GuiClosePacket.java
@@ -1,4 +1,4 @@
-package kamkeel.npcs.network.packets.client.gui;
+package kamkeel.npcs.network.packets.data.gui;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
@@ -11,9 +11,8 @@ import kamkeel.npcs.util.ByteBufUtils;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.GuiScreen;
import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.nbt.NBTTagCompound;
-import noppes.npcs.CustomNpcs;
-import noppes.npcs.Server;
import noppes.npcs.client.gui.util.IGuiClose;
import java.io.IOException;
@@ -31,6 +30,11 @@ public final class GuiClosePacket extends AbstractPacket {
this.compound = compound;
}
+ public static void closeGUI(EntityPlayerMP playerMP, int closeCode, NBTTagCompound compound){
+ GuiClosePacket packet = new GuiClosePacket(closeCode, compound);
+ PacketHandler.Instance.sendToPlayer(packet, playerMP);
+ }
+
@Override
public Enum getType() {
return EnumClientPacket.GUI_CLOSE;
@@ -38,7 +42,7 @@ public final class GuiClosePacket extends AbstractPacket {
@Override
public PacketChannel getChannel() {
- return PacketHandler.CLIENT_PACKET;
+ return PacketHandler.DATA_PACKET;
}
@Override
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiErrorPacket.java b/src/main/java/kamkeel/npcs/network/packets/data/gui/GuiErrorPacket.java
similarity index 81%
rename from src/main/java/kamkeel/npcs/network/packets/client/gui/GuiErrorPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/data/gui/GuiErrorPacket.java
index b1620962b..387fa36fa 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiErrorPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/data/gui/GuiErrorPacket.java
@@ -1,4 +1,4 @@
-package kamkeel.npcs.network.packets.client.gui;
+package kamkeel.npcs.network.packets.data.gui;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
@@ -11,9 +11,8 @@ import kamkeel.npcs.util.ByteBufUtils;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.GuiScreen;
import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.nbt.NBTTagCompound;
-import noppes.npcs.CustomNpcs;
-import noppes.npcs.Server;
import noppes.npcs.client.gui.util.IGuiError;
import java.io.IOException;
@@ -31,6 +30,11 @@ public final class GuiErrorPacket extends AbstractPacket {
this.compound = compound;
}
+ public static void errorGUI(EntityPlayerMP playerMP, int closeCode, NBTTagCompound compound){
+ GuiErrorPacket packet = new GuiErrorPacket(closeCode, compound);
+ PacketHandler.Instance.sendToPlayer(packet, playerMP);
+ }
+
@Override
public Enum getType() {
return EnumClientPacket.GUI_ERROR;
@@ -38,7 +42,7 @@ public final class GuiErrorPacket extends AbstractPacket {
@Override
public PacketChannel getChannel() {
- return PacketHandler.CLIENT_PACKET;
+ return PacketHandler.DATA_PACKET;
}
@Override
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiOpenBookPacket.java b/src/main/java/kamkeel/npcs/network/packets/data/gui/GuiOpenBookPacket.java
similarity index 95%
rename from src/main/java/kamkeel/npcs/network/packets/client/gui/GuiOpenBookPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/data/gui/GuiOpenBookPacket.java
index 9f3ef0a92..6cfb4ac99 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiOpenBookPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/data/gui/GuiOpenBookPacket.java
@@ -1,4 +1,4 @@
-package kamkeel.npcs.network.packets.client.gui;
+package kamkeel.npcs.network.packets.data.gui;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
@@ -40,7 +40,7 @@ public final class GuiOpenBookPacket extends AbstractPacket {
@Override
public PacketChannel getChannel() {
- return PacketHandler.CLIENT_PACKET;
+ return PacketHandler.DATA_PACKET;
}
@Override
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiOpenPacket.java b/src/main/java/kamkeel/npcs/network/packets/data/gui/GuiOpenPacket.java
similarity index 80%
rename from src/main/java/kamkeel/npcs/network/packets/client/gui/GuiOpenPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/data/gui/GuiOpenPacket.java
index 105bb08f8..c12235fba 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiOpenPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/data/gui/GuiOpenPacket.java
@@ -1,4 +1,4 @@
-package kamkeel.npcs.network.packets.client.gui;
+package kamkeel.npcs.network.packets.data.gui;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
@@ -8,6 +8,7 @@ import kamkeel.npcs.network.PacketChannel;
import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.entity.player.EntityPlayerMP;
import noppes.npcs.CustomNpcs;
import noppes.npcs.constants.EnumGuiType;
@@ -30,6 +31,11 @@ public final class GuiOpenPacket extends AbstractPacket {
this.z = z;
}
+ public static void openGUI(EntityPlayerMP playerMP, EnumGuiType type, int x, int y, int z){
+ GuiOpenPacket packet = new GuiOpenPacket(type, x, y, z);
+ PacketHandler.Instance.sendToPlayer(packet, playerMP);
+ }
+
@Override
public Enum getType() {
return EnumClientPacket.GUI_OPEN;
@@ -37,7 +43,7 @@ public final class GuiOpenPacket extends AbstractPacket {
@Override
public PacketChannel getChannel() {
- return PacketHandler.CLIENT_PACKET;
+ return PacketHandler.DATA_PACKET;
}
@Override
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiRedstonePacket.java b/src/main/java/kamkeel/npcs/network/packets/data/gui/GuiRedstonePacket.java
similarity index 89%
rename from src/main/java/kamkeel/npcs/network/packets/client/gui/GuiRedstonePacket.java
rename to src/main/java/kamkeel/npcs/network/packets/data/gui/GuiRedstonePacket.java
index c67ca326b..8abfbe319 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiRedstonePacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/data/gui/GuiRedstonePacket.java
@@ -1,4 +1,4 @@
-package kamkeel.npcs.network.packets.client.gui;
+package kamkeel.npcs.network.packets.data.gui;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
@@ -10,8 +10,6 @@ import kamkeel.npcs.network.enums.EnumClientPacket;
import kamkeel.npcs.util.ByteBufUtils;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.nbt.NBTTagCompound;
-import noppes.npcs.CustomNpcs;
-import noppes.npcs.Server;
import noppes.npcs.client.NoppesUtil;
import java.io.IOException;
@@ -34,7 +32,7 @@ public final class GuiRedstonePacket extends AbstractPacket {
@Override
public PacketChannel getChannel() {
- return PacketHandler.CLIENT_PACKET;
+ return PacketHandler.DATA_PACKET;
}
@Override
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiTeleporterPacket.java b/src/main/java/kamkeel/npcs/network/packets/data/gui/GuiTeleporterPacket.java
similarity index 92%
rename from src/main/java/kamkeel/npcs/network/packets/client/gui/GuiTeleporterPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/data/gui/GuiTeleporterPacket.java
index 734c60002..19faca548 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiTeleporterPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/data/gui/GuiTeleporterPacket.java
@@ -1,4 +1,4 @@
-package kamkeel.npcs.network.packets.client.gui;
+package kamkeel.npcs.network.packets.data.gui;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
@@ -26,7 +26,7 @@ public final class GuiTeleporterPacket extends AbstractPacket {
@Override
public PacketChannel getChannel() {
- return PacketHandler.CLIENT_PACKET;
+ return PacketHandler.DATA_PACKET;
}
@Override
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiWaypointPacket.java b/src/main/java/kamkeel/npcs/network/packets/data/gui/GuiWaypointPacket.java
similarity index 89%
rename from src/main/java/kamkeel/npcs/network/packets/client/gui/GuiWaypointPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/data/gui/GuiWaypointPacket.java
index 55408fc0d..86dd15e04 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/gui/GuiWaypointPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/data/gui/GuiWaypointPacket.java
@@ -1,4 +1,4 @@
-package kamkeel.npcs.network.packets.client.gui;
+package kamkeel.npcs.network.packets.data.gui;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
@@ -10,8 +10,6 @@ import kamkeel.npcs.network.enums.EnumClientPacket;
import kamkeel.npcs.util.ByteBufUtils;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.nbt.NBTTagCompound;
-import noppes.npcs.CustomNpcs;
-import noppes.npcs.Server;
import noppes.npcs.client.NoppesUtil;
import java.io.IOException;
@@ -34,7 +32,7 @@ public final class GuiWaypointPacket extends AbstractPacket {
@Override
public PacketChannel getChannel() {
- return PacketHandler.CLIENT_PACKET;
+ return PacketHandler.DATA_PACKET;
}
@Override
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/gui/IsGuiOpenPacket.java b/src/main/java/kamkeel/npcs/network/packets/data/gui/IsGuiOpenPacket.java
similarity index 89%
rename from src/main/java/kamkeel/npcs/network/packets/client/gui/IsGuiOpenPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/data/gui/IsGuiOpenPacket.java
index f8e1758f0..91bfe9bcb 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/gui/IsGuiOpenPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/data/gui/IsGuiOpenPacket.java
@@ -1,4 +1,4 @@
-package kamkeel.npcs.network.packets.client.gui;
+package kamkeel.npcs.network.packets.data.gui;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
@@ -9,7 +9,6 @@ import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.client.Minecraft;
import net.minecraft.entity.player.EntityPlayer;
-import noppes.npcs.CustomNpcs;
import noppes.npcs.client.NoppesUtil;
import java.io.IOException;
@@ -26,7 +25,7 @@ public final class IsGuiOpenPacket extends AbstractPacket {
@Override
public PacketChannel getChannel() {
- return PacketHandler.CLIENT_PACKET;
+ return PacketHandler.DATA_PACKET;
}
@Override
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/large/LargeGuiDataPacket.java b/src/main/java/kamkeel/npcs/network/packets/data/large/GuiDataPacket.java
similarity index 80%
rename from src/main/java/kamkeel/npcs/network/packets/client/large/LargeGuiDataPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/data/large/GuiDataPacket.java
index a370f3a2e..d4e3be4bc 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/large/LargeGuiDataPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/data/large/GuiDataPacket.java
@@ -1,10 +1,9 @@
-package kamkeel.npcs.network.packets.client.large;
+package kamkeel.npcs.network.packets.data.large;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import io.netty.buffer.ByteBuf;
import io.netty.buffer.Unpooled;
-import kamkeel.npcs.network.AbstractPacket;
import kamkeel.npcs.network.LargeAbstractPacket;
import kamkeel.npcs.network.PacketChannel;
import kamkeel.npcs.network.PacketHandler;
@@ -13,25 +12,30 @@ import kamkeel.npcs.util.ByteBufUtils;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.GuiScreen;
import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.nbt.NBTTagCompound;
import noppes.npcs.client.gui.util.GuiContainerNPCInterface;
import noppes.npcs.client.gui.util.GuiNPCInterface;
import noppes.npcs.client.gui.util.IGuiData;
import java.io.IOException;
-import java.util.Map;
-public final class LargeGuiDataPacket extends LargeAbstractPacket {
+public final class GuiDataPacket extends LargeAbstractPacket {
public static final String packetName = "Client|GuiData";
private NBTTagCompound compound;
- public LargeGuiDataPacket(){}
+ public GuiDataPacket(){}
- public LargeGuiDataPacket(NBTTagCompound comp){
+ public GuiDataPacket(NBTTagCompound comp){
this.compound = comp;
}
+ public static void sendGuiData(EntityPlayerMP playerMP, NBTTagCompound compound){
+ GuiDataPacket packet = new GuiDataPacket(compound);
+ PacketHandler.Instance.sendToPlayer(packet, playerMP);
+ }
+
@Override
public Enum getType() {
return EnumClientPacket.GUI_DATA;
@@ -39,7 +43,7 @@ public final class LargeGuiDataPacket extends LargeAbstractPacket {
@Override
public PacketChannel getChannel() {
- return PacketHandler.CLIENT_PACKET;
+ return PacketHandler.DATA_PACKET;
}
@Override
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/large/LargePartyDataPacket.java b/src/main/java/kamkeel/npcs/network/packets/data/large/PartyDataPacket.java
similarity index 79%
rename from src/main/java/kamkeel/npcs/network/packets/client/large/LargePartyDataPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/data/large/PartyDataPacket.java
index 9d4f115e1..ab6982403 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/large/LargePartyDataPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/data/large/PartyDataPacket.java
@@ -1,4 +1,4 @@
-package kamkeel.npcs.network.packets.client.large;
+package kamkeel.npcs.network.packets.data.large;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
@@ -12,26 +12,30 @@ import kamkeel.npcs.util.ByteBufUtils;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.GuiScreen;
import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.nbt.NBTTagCompound;
-import noppes.npcs.Server;
import noppes.npcs.client.gui.util.GuiContainerNPCInterface;
import noppes.npcs.client.gui.util.GuiNPCInterface;
-import noppes.npcs.client.gui.util.IGuiData;
import noppes.npcs.client.gui.util.IPartyData;
import java.io.IOException;
-public final class LargePartyDataPacket extends LargeAbstractPacket {
+public final class PartyDataPacket extends LargeAbstractPacket {
public static final String packetName = "Client|PartyData";
private NBTTagCompound compound;
- public LargePartyDataPacket(){}
+ public PartyDataPacket(){}
- public LargePartyDataPacket(NBTTagCompound comp){
+ public PartyDataPacket(NBTTagCompound comp){
this.compound = comp;
}
+ public static void sendPartyData(EntityPlayerMP playerMP, NBTTagCompound compound){
+ PartyDataPacket packet = new PartyDataPacket(compound);
+ PacketHandler.Instance.sendToPlayer(packet, playerMP);
+ }
+
@Override
public Enum getType() {
return EnumClientPacket.PARTY_DATA;
@@ -39,7 +43,7 @@ public final class LargePartyDataPacket extends LargeAbstractPacket {
@Override
public PacketChannel getChannel() {
- return PacketHandler.CLIENT_PACKET;
+ return PacketHandler.DATA_PACKET;
}
@Override
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/large/LargeScrollDataPacket.java b/src/main/java/kamkeel/npcs/network/packets/data/large/ScrollDataPacket.java
similarity index 72%
rename from src/main/java/kamkeel/npcs/network/packets/client/large/LargeScrollDataPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/data/large/ScrollDataPacket.java
index 377bbc5e9..3cfe916ed 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/large/LargeScrollDataPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/data/large/ScrollDataPacket.java
@@ -1,4 +1,4 @@
-package kamkeel.npcs.network.packets.client.large;
+package kamkeel.npcs.network.packets.data.large;
import io.netty.buffer.ByteBuf;
import io.netty.buffer.Unpooled;
@@ -8,23 +8,28 @@ import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.enums.EnumClientPacket;
import kamkeel.npcs.util.ByteBufUtils;
import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.entity.player.EntityPlayerMP;
import noppes.npcs.client.NoppesUtil;
import java.io.IOException;
-import java.util.HashMap;
import java.util.Map;
-public final class LargeScrollDataPacket extends LargeAbstractPacket {
+public final class ScrollDataPacket extends LargeAbstractPacket {
public static final String packetName = "Large|ScrollData";
private Map data;
- public LargeScrollDataPacket() {}
+ public ScrollDataPacket() {}
- public LargeScrollDataPacket(Map data) {
+ public ScrollDataPacket(Map data) {
this.data = data;
}
+ public static void sendScrollData(EntityPlayerMP player, Map map) {
+ ScrollDataPacket packet = new ScrollDataPacket(map);
+ PacketHandler.Instance.sendToPlayer(packet, player);
+ }
+
@Override
public Enum getType() {
return EnumClientPacket.SCROLL_DATA;
@@ -32,7 +37,7 @@ public final class LargeScrollDataPacket extends LargeAbstractPacket {
@Override
public PacketChannel getChannel() {
- return PacketHandler.CLIENT_PACKET;
+ return PacketHandler.DATA_PACKET;
}
@Override
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/large/LargeScrollGroupPacket.java b/src/main/java/kamkeel/npcs/network/packets/data/large/ScrollGroupPacket.java
similarity index 71%
rename from src/main/java/kamkeel/npcs/network/packets/client/large/LargeScrollGroupPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/data/large/ScrollGroupPacket.java
index 67cca5755..5c4e522a2 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/large/LargeScrollGroupPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/data/large/ScrollGroupPacket.java
@@ -1,4 +1,4 @@
-package kamkeel.npcs.network.packets.client.large;
+package kamkeel.npcs.network.packets.data.large;
import io.netty.buffer.ByteBuf;
import io.netty.buffer.Unpooled;
@@ -8,22 +8,28 @@ import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.enums.EnumClientPacket;
import kamkeel.npcs.util.ByteBufUtils;
import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.entity.player.EntityPlayerMP;
import noppes.npcs.client.NoppesUtil;
import java.io.IOException;
import java.util.Map;
-public final class LargeScrollGroupPacket extends LargeAbstractPacket {
+public final class ScrollGroupPacket extends LargeAbstractPacket {
public static final String packetName = "Large|ScrollGroup";
private Map data;
- public LargeScrollGroupPacket() {}
+ public ScrollGroupPacket() {}
- public LargeScrollGroupPacket(Map data) {
+ public ScrollGroupPacket(Map data) {
this.data = data;
}
+ public static void sendScrollGroup(EntityPlayerMP player, Map map){
+ ScrollGroupPacket packet = new ScrollGroupPacket(map);
+ PacketHandler.Instance.sendToPlayer(packet, player);
+ }
+
@Override
public Enum getType() {
return EnumClientPacket.SCROLL_GROUP;
@@ -31,7 +37,7 @@ public final class LargeScrollGroupPacket extends LargeAbstractPacket {
@Override
public PacketChannel getChannel() {
- return PacketHandler.CLIENT_PACKET;
+ return PacketHandler.DATA_PACKET;
}
@Override
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/large/LargeScrollListPacket.java b/src/main/java/kamkeel/npcs/network/packets/data/large/ScrollListPacket.java
similarity index 71%
rename from src/main/java/kamkeel/npcs/network/packets/client/large/LargeScrollListPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/data/large/ScrollListPacket.java
index 2649421e4..1b6db6a9a 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/large/LargeScrollListPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/data/large/ScrollListPacket.java
@@ -1,4 +1,4 @@
-package kamkeel.npcs.network.packets.client.large;
+package kamkeel.npcs.network.packets.data.large;
import io.netty.buffer.ByteBuf;
import io.netty.buffer.Unpooled;
@@ -8,22 +8,28 @@ import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.enums.EnumClientPacket;
import kamkeel.npcs.util.ByteBufUtils;
import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.entity.player.EntityPlayerMP;
import noppes.npcs.client.NoppesUtil;
import java.io.IOException;
import java.util.List;
-public final class LargeScrollListPacket extends LargeAbstractPacket {
+public final class ScrollListPacket extends LargeAbstractPacket {
public static final String packetName = "Large|ScrollList";
private List data;
- public LargeScrollListPacket() {}
+ public ScrollListPacket() {}
- public LargeScrollListPacket(List data) {
+ public ScrollListPacket(List data) {
this.data = data;
}
+ public static void sendList(EntityPlayerMP player, List list){
+ ScrollListPacket packet = new ScrollListPacket(list);
+ PacketHandler.Instance.sendToPlayer(packet, player);
+ }
+
@Override
public Enum getType() {
return EnumClientPacket.SCROLL_LIST;
@@ -31,7 +37,7 @@ public final class LargeScrollListPacket extends LargeAbstractPacket {
@Override
public PacketChannel getChannel() {
- return PacketHandler.CLIENT_PACKET;
+ return PacketHandler.DATA_PACKET;
}
@Override
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/large/LargeSyncPacket.java b/src/main/java/kamkeel/npcs/network/packets/data/large/SyncPacket.java
similarity index 85%
rename from src/main/java/kamkeel/npcs/network/packets/client/large/LargeSyncPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/data/large/SyncPacket.java
index d634794b9..c7e904ea9 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/large/LargeSyncPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/data/large/SyncPacket.java
@@ -1,7 +1,6 @@
-package kamkeel.npcs.network.packets.client.large;
+package kamkeel.npcs.network.packets.data.large;
import cpw.mods.fml.relauncher.Side;
-import cpw.mods.fml.relauncher.SideOnly;
import io.netty.buffer.ByteBuf;
import io.netty.buffer.Unpooled;
import kamkeel.npcs.controllers.SyncController;
@@ -12,14 +11,9 @@ import kamkeel.npcs.network.enums.EnumClientPacket;
import kamkeel.npcs.network.enums.EnumSyncAction;
import kamkeel.npcs.network.enums.EnumSyncType;
import kamkeel.npcs.util.ByteBufUtils;
-import net.minecraft.client.Minecraft;
-import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer;
-import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import noppes.npcs.CustomNpcs;
-import noppes.npcs.Server;
-import noppes.npcs.entity.EntityNPCInterface;
import java.io.IOException;
@@ -27,19 +21,19 @@ import java.io.IOException;
* A large sync packet that sends chunked data to the client for a given SyncType
* along with a SyncAction (RELOAD, UPDATE, REMOVE).
*/
-public final class LargeSyncPacket extends LargeAbstractPacket {
+public final class SyncPacket extends LargeAbstractPacket {
private EnumSyncType enumSyncType;
private EnumSyncAction enumSyncAction;
private NBTTagCompound syncData;
private int operationID;
- public LargeSyncPacket() {}
+ public SyncPacket() {}
/**
* Constructs a new LargeSyncPacket.
*/
- public LargeSyncPacket(EnumSyncType enumSyncType, EnumSyncAction enumSyncAction, int catId, NBTTagCompound syncData) {
+ public SyncPacket(EnumSyncType enumSyncType, EnumSyncAction enumSyncAction, int catId, NBTTagCompound syncData) {
this.enumSyncType = enumSyncType;
this.enumSyncAction = enumSyncAction;
this.syncData = syncData;
@@ -53,7 +47,7 @@ public final class LargeSyncPacket extends LargeAbstractPacket {
@Override
public PacketChannel getChannel() {
- return PacketHandler.CLIENT_PACKET;
+ return PacketHandler.DATA_PACKET;
}
@Override
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/npc/DeleteNpcPacket.java b/src/main/java/kamkeel/npcs/network/packets/data/npc/DeleteNpcPacket.java
similarity index 91%
rename from src/main/java/kamkeel/npcs/network/packets/client/npc/DeleteNpcPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/data/npc/DeleteNpcPacket.java
index 3f841ac54..eda6cea23 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/npc/DeleteNpcPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/data/npc/DeleteNpcPacket.java
@@ -1,4 +1,4 @@
-package kamkeel.npcs.network.packets.client.npc;
+package kamkeel.npcs.network.packets.data.npc;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
@@ -10,7 +10,6 @@ import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.client.Minecraft;
import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer;
-import noppes.npcs.CustomNpcs;
import noppes.npcs.entity.EntityNPCInterface;
import java.io.IOException;
@@ -33,7 +32,7 @@ public final class DeleteNpcPacket extends AbstractPacket {
@Override
public PacketChannel getChannel() {
- return PacketHandler.CLIENT_PACKET;
+ return PacketHandler.DATA_PACKET;
}
@Override
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/npc/DialogPacket.java b/src/main/java/kamkeel/npcs/network/packets/data/npc/DialogPacket.java
similarity index 96%
rename from src/main/java/kamkeel/npcs/network/packets/client/npc/DialogPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/data/npc/DialogPacket.java
index 0478b08ed..f826ace77 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/npc/DialogPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/data/npc/DialogPacket.java
@@ -1,4 +1,4 @@
-package kamkeel.npcs.network.packets.client.npc;
+package kamkeel.npcs.network.packets.data.npc;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
@@ -40,7 +40,7 @@ public final class DialogPacket extends AbstractPacket {
@Override
public PacketChannel getChannel() {
- return PacketHandler.CLIENT_PACKET;
+ return PacketHandler.DATA_PACKET;
}
@Override
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/npc/EditNpcPacket.java b/src/main/java/kamkeel/npcs/network/packets/data/npc/EditNpcPacket.java
similarity index 91%
rename from src/main/java/kamkeel/npcs/network/packets/client/npc/EditNpcPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/data/npc/EditNpcPacket.java
index 87524d037..7bcaf992a 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/npc/EditNpcPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/data/npc/EditNpcPacket.java
@@ -1,4 +1,4 @@
-package kamkeel.npcs.network.packets.client.npc;
+package kamkeel.npcs.network.packets.data.npc;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
@@ -10,7 +10,6 @@ import kamkeel.npcs.network.enums.EnumClientPacket;
import net.minecraft.client.Minecraft;
import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer;
-import noppes.npcs.CustomNpcs;
import noppes.npcs.client.NoppesUtil;
import noppes.npcs.entity.EntityNPCInterface;
@@ -33,7 +32,7 @@ public final class EditNpcPacket extends AbstractPacket {
@Override
public PacketChannel getChannel() {
- return PacketHandler.CLIENT_PACKET;
+ return PacketHandler.DATA_PACKET;
}
@Override
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/npc/RolePacket.java b/src/main/java/kamkeel/npcs/network/packets/data/npc/RolePacket.java
similarity index 94%
rename from src/main/java/kamkeel/npcs/network/packets/client/npc/RolePacket.java
rename to src/main/java/kamkeel/npcs/network/packets/data/npc/RolePacket.java
index 484a609aa..6375d9df2 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/npc/RolePacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/data/npc/RolePacket.java
@@ -1,4 +1,4 @@
-package kamkeel.npcs.network.packets.client.npc;
+package kamkeel.npcs.network.packets.data.npc;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
@@ -35,7 +35,7 @@ public final class RolePacket extends AbstractPacket {
@Override
public PacketChannel getChannel() {
- return PacketHandler.CLIENT_PACKET;
+ return PacketHandler.DATA_PACKET;
}
@Override
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/npc/UpdateNpcPacket.java b/src/main/java/kamkeel/npcs/network/packets/data/npc/UpdateNpcPacket.java
similarity index 91%
rename from src/main/java/kamkeel/npcs/network/packets/client/npc/UpdateNpcPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/data/npc/UpdateNpcPacket.java
index 5174ba430..5f4cab288 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/npc/UpdateNpcPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/data/npc/UpdateNpcPacket.java
@@ -1,4 +1,4 @@
-package kamkeel.npcs.network.packets.client.npc;
+package kamkeel.npcs.network.packets.data.npc;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
@@ -12,8 +12,6 @@ import net.minecraft.client.Minecraft;
import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.nbt.NBTTagCompound;
-import noppes.npcs.CustomNpcs;
-import noppes.npcs.Server;
import noppes.npcs.entity.EntityNPCInterface;
import java.io.IOException;
@@ -36,7 +34,7 @@ public final class UpdateNpcPacket extends AbstractPacket {
@Override
public PacketChannel getChannel() {
- return PacketHandler.CLIENT_PACKET;
+ return PacketHandler.DATA_PACKET;
}
@Override
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/npc/WeaponNpcPacket.java b/src/main/java/kamkeel/npcs/network/packets/data/npc/WeaponNpcPacket.java
similarity index 92%
rename from src/main/java/kamkeel/npcs/network/packets/client/npc/WeaponNpcPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/data/npc/WeaponNpcPacket.java
index c1e8f48f1..8abfc9f6e 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/npc/WeaponNpcPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/data/npc/WeaponNpcPacket.java
@@ -1,4 +1,4 @@
-package kamkeel.npcs.network.packets.client.npc;
+package kamkeel.npcs.network.packets.data.npc;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
@@ -13,8 +13,6 @@ import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
-import noppes.npcs.Server;
-import noppes.npcs.client.NoppesUtil;
import noppes.npcs.entity.EntityNPCInterface;
import java.io.IOException;
@@ -41,7 +39,7 @@ public final class WeaponNpcPacket extends AbstractPacket {
@Override
public PacketChannel getChannel() {
- return PacketHandler.CLIENT_PACKET;
+ return PacketHandler.DATA_PACKET;
}
@Override
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/script/ScriptOverlayClosePacket.java b/src/main/java/kamkeel/npcs/network/packets/data/script/ScriptOverlayClosePacket.java
similarity index 92%
rename from src/main/java/kamkeel/npcs/network/packets/client/script/ScriptOverlayClosePacket.java
rename to src/main/java/kamkeel/npcs/network/packets/data/script/ScriptOverlayClosePacket.java
index 49032706d..77057f641 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/script/ScriptOverlayClosePacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/data/script/ScriptOverlayClosePacket.java
@@ -1,4 +1,4 @@
-package kamkeel.npcs.network.packets.client.script;
+package kamkeel.npcs.network.packets.data.script;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
@@ -30,7 +30,7 @@ public final class ScriptOverlayClosePacket extends AbstractPacket {
@Override
public PacketChannel getChannel() {
- return PacketHandler.CLIENT_PACKET;
+ return PacketHandler.DATA_PACKET;
}
@Override
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/script/ScriptOverlayDataPacket.java b/src/main/java/kamkeel/npcs/network/packets/data/script/ScriptOverlayDataPacket.java
similarity index 92%
rename from src/main/java/kamkeel/npcs/network/packets/client/script/ScriptOverlayDataPacket.java
rename to src/main/java/kamkeel/npcs/network/packets/data/script/ScriptOverlayDataPacket.java
index 631e5843d..97fbfa4f4 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/script/ScriptOverlayDataPacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/data/script/ScriptOverlayDataPacket.java
@@ -1,4 +1,4 @@
-package kamkeel.npcs.network.packets.client.script;
+package kamkeel.npcs.network.packets.data.script;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
@@ -11,7 +11,6 @@ import kamkeel.npcs.util.ByteBufUtils;
import net.minecraft.client.Minecraft;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.nbt.NBTTagCompound;
-import noppes.npcs.Server;
import noppes.npcs.client.gui.customoverlay.OverlayCustom;
import noppes.npcs.client.ClientCacheHandler;
@@ -35,7 +34,7 @@ public final class ScriptOverlayDataPacket extends AbstractPacket {
@Override
public PacketChannel getChannel() {
- return PacketHandler.CLIENT_PACKET;
+ return PacketHandler.DATA_PACKET;
}
@Override
diff --git a/src/main/java/kamkeel/npcs/network/packets/client/script/ScriptedParticlePacket.java b/src/main/java/kamkeel/npcs/network/packets/data/script/ScriptedParticlePacket.java
similarity index 96%
rename from src/main/java/kamkeel/npcs/network/packets/client/script/ScriptedParticlePacket.java
rename to src/main/java/kamkeel/npcs/network/packets/data/script/ScriptedParticlePacket.java
index cd5cda8cd..2295a754c 100644
--- a/src/main/java/kamkeel/npcs/network/packets/client/script/ScriptedParticlePacket.java
+++ b/src/main/java/kamkeel/npcs/network/packets/data/script/ScriptedParticlePacket.java
@@ -1,4 +1,4 @@
-package kamkeel.npcs.network.packets.client.script;
+package kamkeel.npcs.network.packets.data.script;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
@@ -37,7 +37,7 @@ public final class ScriptedParticlePacket extends AbstractPacket {
@Override
public PacketChannel getChannel() {
- return PacketHandler.CLIENT_PACKET;
+ return PacketHandler.DATA_PACKET;
}
@Override
diff --git a/src/main/java/noppes/npcs/NoppesUtilPlayer.java b/src/main/java/noppes/npcs/NoppesUtilPlayer.java
index 794804db7..d73dc67df 100644
--- a/src/main/java/noppes/npcs/NoppesUtilPlayer.java
+++ b/src/main/java/noppes/npcs/NoppesUtilPlayer.java
@@ -4,13 +4,12 @@ import cpw.mods.fml.common.network.internal.FMLProxyPacket;
import io.netty.buffer.ByteBuf;
import io.netty.buffer.Unpooled;
import kamkeel.npcs.network.PacketHandler;
-import kamkeel.npcs.network.PacketUtil;
import kamkeel.npcs.network.enums.EnumSoundOperation;
-import kamkeel.npcs.network.packets.client.DisableMouseInputPacket;
-import kamkeel.npcs.network.packets.client.OverlayQuestTrackingPacket;
-import kamkeel.npcs.network.packets.client.SoundManagementPacket;
-import kamkeel.npcs.network.packets.client.SwingPlayerArmPacket;
-import kamkeel.npcs.network.packets.client.gui.IsGuiOpenPacket;
+import kamkeel.npcs.network.packets.data.*;
+import kamkeel.npcs.network.packets.data.gui.GuiClosePacket;
+import kamkeel.npcs.network.packets.data.gui.IsGuiOpenPacket;
+import kamkeel.npcs.network.packets.data.large.GuiDataPacket;
+import kamkeel.npcs.network.packets.data.large.PartyDataPacket;
import kamkeel.npcs.util.ByteBufUtils;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.EntityPlayerMP;
@@ -295,17 +294,17 @@ public class NoppesUtilPlayer {
if(npc.roleInterface != null)
npc.roleInterface.interact(player);
else
- PacketUtil.closeGUI(player, -1 , new NBTTagCompound());
+ GuiClosePacket.closeGUI(player, -1 , new NBTTagCompound());
}
else if(option.optionType == EnumOptionType.DialogOption){
NoppesUtilServer.openDialog(player, npc, option.getDialog(), optionId+1);
}
else if(option.optionType == EnumOptionType.CommandBlock){
- PacketUtil.closeGUI(player, -1 , new NBTTagCompound());
+ GuiClosePacket.closeGUI(player, -1 , new NBTTagCompound());
NoppesUtilServer.runCommand(player, npc.getCommandSenderName(), option.command);
}
else
- PacketUtil.closeGUI(player, -1 , new NBTTagCompound());
+ GuiClosePacket.closeGUI(player, -1 , new NBTTagCompound());
}
public static void updateQuestLogData(ByteBuf buffer, EntityPlayerMP player) throws IOException {
@@ -426,14 +425,14 @@ public class NoppesUtilPlayer {
}
QuestLogData data = new QuestLogData();
data.setData(player);
- PacketUtil.sendGuiData(player, data.writeNBT());
+ GuiDataPacket.sendGuiData(player, data.writeNBT());
}
public static void sendTrackedQuest(EntityPlayerMP player) {
QuestLogData data = new QuestLogData();
data.setTrackedQuestKey(player);
- PacketUtil.sendPartyData(player, data.writeTrackedQuest());
+ PartyDataPacket.sendPartyData(player, data.writeTrackedQuest());
}
public static boolean questCompletion(EntityPlayerMP player, int questId) {
@@ -635,7 +634,7 @@ public class NoppesUtilPlayer {
}
playerData.save();
- PacketUtil.sendQuestComplete((EntityPlayerMP)player, data.quest.writeToNBT(new NBTTagCompound()));
+ QuestCompletionPacket.sendQuestComplete((EntityPlayerMP)player, data.quest.writeToNBT(new NBTTagCompound()));
}
if(quest.type == EnumQuestType.Item && partyOptions.objectiveRequirement == EnumPartyObjectives.Shared){
diff --git a/src/main/java/noppes/npcs/NoppesUtilServer.java b/src/main/java/noppes/npcs/NoppesUtilServer.java
index 101823217..4e1e4f309 100644
--- a/src/main/java/noppes/npcs/NoppesUtilServer.java
+++ b/src/main/java/noppes/npcs/NoppesUtilServer.java
@@ -3,14 +3,18 @@ package noppes.npcs;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.controllers.SyncController;
import kamkeel.npcs.network.PacketHandler;
-import kamkeel.npcs.network.PacketUtil;
-import kamkeel.npcs.network.packets.client.npc.DialogPacket;
-import kamkeel.npcs.network.packets.client.ParticlePacket;
-import kamkeel.npcs.network.packets.client.script.ScriptedParticlePacket;
-import kamkeel.npcs.network.packets.client.npc.DeleteNpcPacket;
-import kamkeel.npcs.network.packets.client.npc.EditNpcPacket;
-import kamkeel.npcs.network.packets.client.npc.RolePacket;
-import kamkeel.npcs.network.packets.client.gui.GuiTeleporterPacket;
+import kamkeel.npcs.network.packets.data.gui.GuiClosePacket;
+import kamkeel.npcs.network.packets.data.gui.GuiErrorPacket;
+import kamkeel.npcs.network.packets.data.gui.GuiOpenPacket;
+import kamkeel.npcs.network.packets.data.large.GuiDataPacket;
+import kamkeel.npcs.network.packets.data.large.ScrollListPacket;
+import kamkeel.npcs.network.packets.data.npc.DialogPacket;
+import kamkeel.npcs.network.packets.data.ParticlePacket;
+import kamkeel.npcs.network.packets.data.script.ScriptedParticlePacket;
+import kamkeel.npcs.network.packets.data.npc.DeleteNpcPacket;
+import kamkeel.npcs.network.packets.data.npc.EditNpcPacket;
+import kamkeel.npcs.network.packets.data.npc.RolePacket;
+import kamkeel.npcs.network.packets.data.gui.GuiTeleporterPacket;
import kamkeel.npcs.util.ByteBufUtils;
import net.minecraft.command.server.CommandBlockLogic;
import net.minecraft.entity.Entity;
@@ -55,8 +59,8 @@ import java.io.IOException;
import java.text.DecimalFormat;
import java.util.*;
-import static kamkeel.npcs.network.PacketUtil.sendScrollData;
-import static kamkeel.npcs.network.PacketUtil.sendScrollGroup;
+import static kamkeel.npcs.network.packets.data.large.ScrollDataPacket.sendScrollData;
+import static kamkeel.npcs.network.packets.data.large.ScrollGroupPacket.sendScrollGroup;
public class NoppesUtilServer {
private static HashMap editingQuests = new HashMap();
@@ -298,13 +302,13 @@ public class NoppesUtilServer {
return;
}
else{
- PacketUtil.openGUI((EntityPlayerMP)player, gui, i, j, k);
+ GuiOpenPacket.openGUI((EntityPlayerMP)player, gui, i, j, k);
}
ArrayList list = getScrollData(player, gui, npc);
if(list == null || list.isEmpty())
return;
- PacketUtil.sendList((EntityPlayerMP)player, list);
+ ScrollListPacket.sendList((EntityPlayerMP)player, list);
}
public static void sendOpenGuiNoDelay(final EntityPlayer player,
@@ -320,13 +324,13 @@ public class NoppesUtilServer {
return;
}
else{
- PacketUtil.openGUI((EntityPlayerMP)player, gui, i, j, k);
+ GuiOpenPacket.openGUI((EntityPlayerMP)player, gui, i, j, k);
}
ArrayList list = getScrollData(player, gui, npc);
if(list == null || list.isEmpty())
return;
- PacketUtil.sendList((EntityPlayerMP)player, list);
+ ScrollListPacket.sendList((EntityPlayerMP)player, list);
}
@@ -671,7 +675,7 @@ public class NoppesUtilServer {
NBTTagCompound compound = option.writeNBT();
compound.setInteger("Position", pos);
- PacketUtil.sendGuiData((EntityPlayerMP)player, compound);
+ GuiDataPacket.sendGuiData((EntityPlayerMP)player, compound);
}
}
@@ -707,7 +711,7 @@ public class NoppesUtilServer {
public static void setClonerGui(EntityPlayerMP player, int x, int y, int z){
if(player == null)
return;
- PacketUtil.openGUI(player, EnumGuiType.Cloner, x, y, z);
+ GuiOpenPacket.openGUI(player, EnumGuiType.Cloner, x, y, z);
}
public static void setTeleporterGUI(EntityPlayerMP player){
@@ -724,13 +728,13 @@ public class NoppesUtilServer {
ContainerManageRecipes container = (ContainerManageRecipes) player.openContainer;
container.setRecipe(recipe);
- PacketUtil.sendGuiData((EntityPlayerMP)player, recipe.writeNBT());
+ GuiDataPacket.sendGuiData((EntityPlayerMP)player, recipe.writeNBT());
}
public static void sendBank(EntityPlayerMP player,Bank bank) {
NBTTagCompound compound = new NBTTagCompound();
bank.writeEntityToNBT(compound);
- PacketUtil.sendGuiData((EntityPlayerMP)player, compound);
+ GuiDataPacket.sendGuiData((EntityPlayerMP)player, compound);
if(player.openContainer instanceof ContainerManageBanks){
((ContainerManageBanks)player.openContainer).setBank(bank);
@@ -756,14 +760,14 @@ public class NoppesUtilServer {
}
public static void sendGuiError(EntityPlayer player, int i) {
- PacketUtil.errorGUI((EntityPlayerMP)player, i, new NBTTagCompound());
+ GuiErrorPacket.errorGUI((EntityPlayerMP)player, i, new NBTTagCompound());
}
public static void sendGuiClose(EntityPlayerMP player, int i, NBTTagCompound comp) {
if(player.openContainer != player.inventoryContainer){
player.openContainer = player.inventoryContainer;
}
- PacketUtil.closeGUI(player, i, comp);
+ GuiClosePacket.closeGUI(player, i, comp);
}
public static Entity spawnCloneWithProtection(NBTTagCompound compound, int x, int y,
diff --git a/src/main/java/noppes/npcs/PacketHandlerPlayer.java b/src/main/java/noppes/npcs/PacketHandlerPlayer.java
index 95d2d05d3..88e5c4832 100644
--- a/src/main/java/noppes/npcs/PacketHandlerPlayer.java
+++ b/src/main/java/noppes/npcs/PacketHandlerPlayer.java
@@ -3,9 +3,8 @@ package noppes.npcs;
import cpw.mods.fml.common.eventhandler.SubscribeEvent;
import cpw.mods.fml.common.network.FMLNetworkEvent.ServerCustomPacketEvent;
import io.netty.buffer.ByteBuf;
-import kamkeel.npcs.network.PacketUtil;
+import kamkeel.npcs.network.packets.data.large.GuiDataPacket;
import kamkeel.npcs.util.ByteBufUtils;
-import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.init.Items;
import net.minecraft.item.ItemEditableBook;
@@ -29,7 +28,6 @@ import noppes.npcs.roles.RoleCompanion;
import java.io.IOException;
import java.util.Iterator;
-import java.util.UUID;
public class PacketHandlerPlayer{
@@ -45,17 +43,7 @@ public class PacketHandlerPlayer{
}
private void player(ByteBuf buffer, EntityPlayerMP player, EnumPlayerPacket type) throws IOException {
- if(type == EnumPlayerPacket.MarkData){
- String uuid = ByteBufUtils.readString(buffer);
- if(uuid == null)
- return;
-
- Entity entity = NoppesUtilServer.getEntityFromUUID(player.worldObj, UUID.fromString(uuid));
- if(!(entity instanceof EntityNPCInterface))
- return;
- MarkData data = MarkData.get((EntityNPCInterface) entity);
- }
- else if(type == EnumPlayerPacket.CompanionTalentExp){
+ if(type == EnumPlayerPacket.CompanionTalentExp){
EntityNPCInterface npc = NoppesUtilServer.getEditingNpc(player);
if(npc == null || npc.advanced.role != EnumRoleType.Companion || player != npc.getOwner())
return;
@@ -149,20 +137,20 @@ public class PacketHandlerPlayer{
if(npc == null || npc.advanced.role != EnumRoleType.Follower)
return;
NoppesUtilPlayer.extendFollower(player, npc);
- PacketUtil.sendGuiData(player, npc.roleInterface.writeToNBT(new NBTTagCompound()));
+ GuiDataPacket.sendGuiData(player, npc.roleInterface.writeToNBT(new NBTTagCompound()));
}
else if(type == EnumPlayerPacket.FollowerState){
EntityNPCInterface npc = NoppesUtilServer.getEditingNpc(player);
if(npc == null || npc.advanced.role != EnumRoleType.Follower)
return;
NoppesUtilPlayer.changeFollowerState(player,npc);
- PacketUtil.sendGuiData(player, npc.roleInterface.writeToNBT(new NBTTagCompound()));
+ GuiDataPacket.sendGuiData(player, npc.roleInterface.writeToNBT(new NBTTagCompound()));
}
else if(type == EnumPlayerPacket.RoleGet){
EntityNPCInterface npc = NoppesUtilServer.getEditingNpc(player);
if(npc == null || npc.advanced.role == EnumRoleType.None)
return;
- PacketUtil.sendGuiData(player, npc.roleInterface.writeToNBT(new NBTTagCompound()));
+ GuiDataPacket.sendGuiData(player, npc.roleInterface.writeToNBT(new NBTTagCompound()));
}
else if(type == EnumPlayerPacket.Transport){
EntityNPCInterface npc = NoppesUtilServer.getEditingNpc(player);
@@ -214,11 +202,11 @@ public class PacketHandlerPlayer{
}
else if(type == EnumPlayerPacket.FactionsGet){
PlayerFactionData data = PlayerDataController.Instance.getPlayerData(player).factionData;
- PacketUtil.sendGuiData(player, data.getPlayerGuiData());
+ GuiDataPacket.sendGuiData(player, data.getPlayerGuiData());
}
else if(type == EnumPlayerPacket.MailGet){
PlayerMailData data = PlayerDataController.Instance.getPlayerData(player).mailData;
- PacketUtil.sendGuiData(player, data.saveNBTData(new NBTTagCompound()));
+ GuiDataPacket.sendGuiData(player, data.saveNBTData(new NBTTagCompound()));
}
else if(type == EnumPlayerPacket.MailDelete){
long time = buffer.readLong();
@@ -232,7 +220,7 @@ public class PacketHandlerPlayer{
it.remove();
}
}
- PacketUtil.sendGuiData(player, data.saveNBTData(new NBTTagCompound()));
+ GuiDataPacket.sendGuiData(player, data.saveNBTData(new NBTTagCompound()));
}
else if(type == EnumPlayerPacket.MailSend){
if(!(player.openContainer instanceof ContainerMail))
diff --git a/src/main/java/noppes/npcs/PacketHandlerServer.java b/src/main/java/noppes/npcs/PacketHandlerServer.java
index 8419eb7e4..4f7e0989f 100644
--- a/src/main/java/noppes/npcs/PacketHandlerServer.java
+++ b/src/main/java/noppes/npcs/PacketHandlerServer.java
@@ -6,7 +6,11 @@ import cpw.mods.fml.common.network.FMLNetworkEvent.ServerCustomPacketEvent;
import cpw.mods.fml.relauncher.Side;
import foxz.utils.Market;
import io.netty.buffer.ByteBuf;
-import kamkeel.npcs.network.PacketUtil;
+import kamkeel.npcs.network.packets.data.ScrollSelectedPacket;
+import kamkeel.npcs.network.packets.data.large.GuiDataPacket;
+import kamkeel.npcs.network.packets.data.large.PartyDataPacket;
+import kamkeel.npcs.network.packets.data.large.ScrollDataPacket;
+import kamkeel.npcs.network.packets.data.large.ScrollListPacket;
import kamkeel.npcs.util.ByteBufUtils;
import net.minecraft.entity.Entity;
import net.minecraft.entity.EntityList;
@@ -104,7 +108,7 @@ public class PacketHandlerServer{
WorldProvider provider = DimensionManager.createProviderFor(id);
map.put(provider.getDimensionName(), id);
}
- PacketUtil.sendScrollData(player, map);
+ ScrollDataPacket.sendScrollData(player, map);
} else if(type == EnumPacketServer.TagsGet){
NoppesUtilServer.sendTagDataAll(player);
} else if (type == EnumPacketServer.NpcTagsGet) {
@@ -117,7 +121,7 @@ public class PacketHandlerServer{
}
}
compound.setTag("TagNames",tagList);
- PacketUtil.sendGuiData(player, compound);
+ GuiDataPacket.sendGuiData(player, compound);
} else if (type == EnumPacketServer.CacheAnimation) {
PlayerDataController.Instance.getPlayerData(player).animationData.cacheAnimation(buffer.readInt());
return;
@@ -138,7 +142,7 @@ public class PacketHandlerServer{
}
NBTTagCompound compound = new NBTTagCompound();
compound.setBoolean("Disband", true);
- PacketUtil.sendPartyData(player, compound);
+ PartyDataPacket.sendPartyData(player, compound);
} else if (type == EnumPacketServer.KickPlayer) {
String kickPlayerName = ByteBufUtils.readString(buffer);
EntityPlayer kickPlayer = NoppesUtilServer.getPlayerByName(kickPlayerName);
@@ -338,7 +342,7 @@ public class PacketHandlerServer{
compound.setString("QuestCompleteWith", quest.completerNpc);
}
}
- PacketUtil.sendPartyData(player, compound);
+ PartyDataPacket.sendPartyData(player, compound);
} else {
sendInviteData(player);
}
@@ -358,7 +362,7 @@ public class PacketHandlerServer{
list.appendTag(partyCompound);
}
compound.setTag("PartyInvites", list);
- PacketUtil.sendPartyData(player, compound);
+ PartyDataPacket.sendPartyData(player, compound);
}
}
@@ -373,7 +377,7 @@ public class PacketHandlerServer{
compound.setBoolean("PlayerScriptsEnabled", ConfigScript.GlobalPlayerScripts);
compound.setBoolean("GlobalNPCScriptsEnabled", ConfigScript.GlobalNPCScripts);
compound.setBoolean("ForgeScriptsEnabled", ConfigScript.GlobalForgeScripts);
- PacketUtil.sendGuiData(player, compound);
+ GuiDataPacket.sendGuiData(player, compound);
}
else if (type == EnumPacketServer.ScriptGlobalGuiDataSave) {
NBTTagCompound compound = ByteBufUtils.readNBT(buffer);
@@ -396,7 +400,7 @@ public class PacketHandlerServer{
else if(type == EnumPacketServer.ScriptDataGet){
NBTTagCompound compound = npc.script.writeToNBT(new NBTTagCompound());
compound.setTag("Languages", ScriptController.Instance.nbtLanguages());
- PacketUtil.sendGuiData(player, compound);
+ GuiDataPacket.sendGuiData(player, compound);
}
}
@@ -406,7 +410,7 @@ public class PacketHandlerServer{
compound.setString("ScriptLanguage", data.getLanguage());
compound.setTag("Languages", ScriptController.Instance.nbtLanguages());
compound.setTag("ScriptConsole", NBTTags.NBTLongStringMap(data.getConsoleText()));
- PacketUtil.sendGuiData(player, compound);
+ GuiDataPacket.sendGuiData(player, compound);
List containers = data.getScripts();
for (int i = 0; i < containers.size(); i++) {
ScriptContainer container = containers.get(i);
@@ -414,7 +418,7 @@ public class PacketHandlerServer{
tabCompound.setInteger("Tab",i);
tabCompound.setTag("Script",container.writeToNBT(new NBTTagCompound()));
tabCompound.setInteger("TotalScripts",containers.size());
- PacketUtil.sendGuiData(player, tabCompound);
+ GuiDataPacket.sendGuiData(player, tabCompound);
}
}
@@ -508,7 +512,7 @@ public class PacketHandlerServer{
iw.loadScriptData();
NBTTagCompound compound = iw.getMCNbt();
compound.setTag("Languages", ScriptController.Instance.nbtLanguages());
- PacketUtil.sendGuiData(player, compound);
+ GuiDataPacket.sendGuiData(player, compound);
} else if (type == EnumPacketServer.ScriptItemDataSave) {
if (!player.capabilities.isCreativeMode) {
return;
@@ -531,7 +535,7 @@ public class PacketHandlerServer{
return;
NBTTagCompound compound = ((TileScripted) tile).getNBT(new NBTTagCompound());
compound.setTag("Languages", ScriptController.Instance.nbtLanguages());
- PacketUtil.sendGuiData(player, compound);
+ GuiDataPacket.sendGuiData(player, compound);
} else if (type == EnumPacketServer.ScriptBlockDataSave) {
if (!player.capabilities.isCreativeMode) {
return;
@@ -568,7 +572,7 @@ public class PacketHandlerServer{
private void movingPackets(EnumPacketServer type, ByteBuf buffer, EntityPlayerMP player, EntityNPCInterface npc) throws IOException {
if(type == EnumPacketServer.MovingPathGet){
- PacketUtil.sendGuiData(player, npc.ai.writeToNBT(new NBTTagCompound()));
+ GuiDataPacket.sendGuiData(player, npc.ai.writeToNBT(new NBTTagCompound()));
}
else if(type == EnumPacketServer.MovingPathSave){
npc.ai.setMovingPath(NBTTags.getIntegerArraySet(ByteBufUtils.readNBT(buffer).getTagList("MovingPathNew",10)));
@@ -583,10 +587,10 @@ public class PacketHandlerServer{
TileEntity tile = player.worldObj.getTileEntity(buffer.readInt(), buffer.readInt(), buffer.readInt());
NBTTagCompound compound = new NBTTagCompound();
tile.writeToNBT(compound);
- PacketUtil.sendGuiData(player, compound);
+ GuiDataPacket.sendGuiData(player, compound);
}
else if(type == EnumPacketServer.DialogCategoriesGet){
- PacketUtil.sendScrollData(player, DialogController.Instance.getScroll());
+ ScrollDataPacket.sendScrollData(player, DialogController.Instance.getScroll());
}
else if(type == EnumPacketServer.DialogsGetFromDialog){
Dialog dialog = DialogController.Instance.dialogs.get(buffer.readInt());
@@ -633,7 +637,7 @@ public class PacketHandlerServer{
Quest quest = QuestController.Instance.quests.get(dialog.quest);
if(quest != null)
compound.setString("DialogQuestName", quest.title);
- PacketUtil.sendGuiData(player, compound);
+ GuiDataPacket.sendGuiData(player, compound);
}
}
else if(type == EnumPacketServer.QuestGet){
@@ -642,20 +646,20 @@ public class PacketHandlerServer{
NBTTagCompound compound = new NBTTagCompound();
if(quest.hasNewQuest())
compound.setString("NextQuestTitle", quest.getNextQuest().title);
- PacketUtil.sendGuiData(player, quest.writeToNBT(compound));
+ GuiDataPacket.sendGuiData(player, quest.writeToNBT(compound));
}
}
else if(type == EnumPacketServer.FactionGet){
NBTTagCompound compound = new NBTTagCompound();
Faction faction = FactionController.getInstance().get(buffer.readInt());
faction.writeNBT(compound);
- PacketUtil.sendGuiData(player, compound);
+ GuiDataPacket.sendGuiData(player, compound);
}
else if(type == EnumPacketServer.TagGet){
NBTTagCompound compound = new NBTTagCompound();
Tag tag = TagController.getInstance().get(buffer.readInt());
tag.writeNBT(compound);
- PacketUtil.sendGuiData(player, compound);
+ GuiDataPacket.sendGuiData(player, compound);
}
}
@@ -673,7 +677,7 @@ public class PacketHandlerServer{
List list = new ArrayList();
for(LinkedData data : LinkedNpcController.Instance.list)
list.add(data.name);
- PacketUtil.sendList((EntityPlayerMP)player, list);
+ ScrollListPacket.sendList((EntityPlayerMP)player, list);
}
else if(type == EnumPacketServer.LinkedRemove){
LinkedNpcController.Instance.removeData(ByteBufUtils.readString(buffer));
@@ -681,15 +685,15 @@ public class PacketHandlerServer{
List list = new ArrayList();
for(LinkedData data : LinkedNpcController.Instance.list)
list.add(data.name);
- PacketUtil.sendList((EntityPlayerMP)player, list);
+ ScrollListPacket.sendList((EntityPlayerMP)player, list);
}
else if(type == EnumPacketServer.LinkedGetAll){
List list = new ArrayList();
for(LinkedData data : LinkedNpcController.Instance.list)
list.add(data.name);
- PacketUtil.sendList((EntityPlayerMP)player, list);
+ ScrollListPacket.sendList((EntityPlayerMP)player, list);
if(npc != null)
- PacketUtil.setSelectedList(player, npc.linkedName);
+ ScrollSelectedPacket.setSelectedList(player, npc.linkedName);
}
else if(type == EnumPacketServer.LinkedSet){
npc.linkedName = ByteBufUtils.readString(buffer);
@@ -755,10 +759,10 @@ public class PacketHandlerServer{
}
else if(type == EnumPacketServer.RemoteFreeze){
CustomNpcs.FreezeNPCs = !CustomNpcs.FreezeNPCs;
- PacketUtil.setSelectedList(player, CustomNpcs.FreezeNPCs?"Unfreeze NPCs":"Freeze NPCs");
+ ScrollSelectedPacket.setSelectedList(player, CustomNpcs.FreezeNPCs?"Unfreeze NPCs":"Freeze NPCs");
}
else if(type == EnumPacketServer.RemoteFreezeGet){
- PacketUtil.setSelectedList(player, CustomNpcs.FreezeNPCs?"Unfreeze NPCs":"Freeze NPCs");
+ ScrollSelectedPacket.setSelectedList(player, CustomNpcs.FreezeNPCs?"Unfreeze NPCs":"Freeze NPCs");
}
else if(type == EnumPacketServer.RemoteReset){
Entity entity = player.worldObj.getEntityByID(buffer.readInt());
@@ -799,12 +803,12 @@ public class PacketHandlerServer{
NoppesUtilServer.setRecipeGui(player,recipe);
}
else if(type == EnumPacketServer.NaturalSpawnGetAll){
- PacketUtil.sendScrollData(player, SpawnController.Instance.getScroll());
+ ScrollDataPacket.sendScrollData(player, SpawnController.Instance.getScroll());
}
else if(type == EnumPacketServer.NaturalSpawnGet){
SpawnData spawn = SpawnController.Instance.getSpawnData(buffer.readInt());
if(spawn != null){
- PacketUtil.sendGuiData(player, spawn.writeNBT(new NBTTagCompound()));
+ GuiDataPacket.sendGuiData(player, spawn.writeNBT(new NBTTagCompound()));
}
}
else if(type == EnumPacketServer.NaturalSpawnSave){
@@ -812,28 +816,28 @@ public class PacketHandlerServer{
data.readNBT(ByteBufUtils.readNBT(buffer));
SpawnController.Instance.saveSpawnData(data);
- PacketUtil.sendScrollData(player, SpawnController.Instance.getScroll());
+ ScrollDataPacket.sendScrollData(player, SpawnController.Instance.getScroll());
}
else if(type == EnumPacketServer.NaturalSpawnRemove){
SpawnController.Instance.removeSpawnData(buffer.readInt());
- PacketUtil.sendScrollData(player, SpawnController.Instance.getScroll());
+ ScrollDataPacket.sendScrollData(player, SpawnController.Instance.getScroll());
}
else if(type == EnumPacketServer.DialogCategorySave){
DialogCategory category = new DialogCategory();
category.readNBT(ByteBufUtils.readNBT(buffer));
DialogController.Instance.saveCategory(category);
- PacketUtil.sendScrollData(player, DialogController.Instance.getScroll());
+ ScrollDataPacket.sendScrollData(player, DialogController.Instance.getScroll());
}
else if(type == EnumPacketServer.DialogCategoryRemove){
DialogController.Instance.removeCategory(buffer.readInt());
- PacketUtil.sendScrollData(player, DialogController.Instance.getScroll());
+ ScrollDataPacket.sendScrollData(player, DialogController.Instance.getScroll());
}
else if(type == EnumPacketServer.DialogCategoryGet){
DialogCategory category = DialogController.Instance.categories.get(buffer.readInt());
if(category != null){
NBTTagCompound comp = category.writeNBT(new NBTTagCompound());
comp.removeTag("Dialogs");
- PacketUtil.sendGuiData(player, comp);
+ GuiDataPacket.sendGuiData(player, comp);
}
}
else if(type == EnumPacketServer.DialogSave){
@@ -882,7 +886,7 @@ public class PacketHandlerServer{
if(option != null && option.hasDialog()){
NBTTagCompound compound = option.writeNBT();
compound.setInteger("Position", slot);
- PacketUtil.sendGuiData(player, compound);
+ GuiDataPacket.sendGuiData(player, compound);
}
}
else if(type == EnumPacketServer.DialogNpcRemove){
@@ -893,7 +897,7 @@ public class PacketHandlerServer{
if(category != null){
NBTTagCompound comp = category.writeNBT(new NBTTagCompound());
comp.removeTag("Dialogs");
- PacketUtil.sendGuiData(player, comp);
+ GuiDataPacket.sendGuiData(player, comp);
}
}
else if(type == EnumPacketServer.QuestCategorySave){
@@ -932,7 +936,7 @@ public class PacketHandlerServer{
compound.setString("2", quest2.title);
if(quest3 != null)
compound.setString("3", quest3.title);
- PacketUtil.sendGuiData(player, compound);
+ GuiDataPacket.sendGuiData(player, compound);
}
else if(type == EnumPacketServer.QuestRemove){
Quest quest = QuestController.Instance.quests.get(buffer.readInt());
@@ -981,8 +985,8 @@ public class PacketHandlerServer{
return;
RoleTransporter role = (RoleTransporter) npc.roleInterface;
if(role.hasTransport()){
- PacketUtil.sendGuiData(player, role.getLocation().writeNBT());
- PacketUtil.setSelectedList(player, role.getLocation().category.title);
+ GuiDataPacket.sendGuiData(player, role.getLocation().writeNBT());
+ ScrollSelectedPacket.setSelectedList(player, role.getLocation().category.title);
}
}
else if(type == EnumPacketServer.FactionSet){
@@ -995,14 +999,14 @@ public class PacketHandlerServer{
NoppesUtilServer.sendFactionDataAll(player);
NBTTagCompound compound = new NBTTagCompound();
faction.writeNBT(compound);
- PacketUtil.sendGuiData(player, compound);
+ GuiDataPacket.sendGuiData(player, compound);
}
else if(type == EnumPacketServer.FactionRemove){
FactionController.getInstance().delete(buffer.readInt());
NoppesUtilServer.sendFactionDataAll(player);
NBTTagCompound compound = new NBTTagCompound();
(new Faction()).writeNBT(compound);
- PacketUtil.sendGuiData(player, compound);
+ GuiDataPacket.sendGuiData(player, compound);
}
else if(type == EnumPacketServer.TagSet){
this.setTags(npc,buffer);
@@ -1014,14 +1018,14 @@ public class PacketHandlerServer{
NoppesUtilServer.sendTagDataAll(player);
NBTTagCompound compound = new NBTTagCompound();
tag.writeNBT(compound);
- PacketUtil.sendGuiData(player, compound);
+ GuiDataPacket.sendGuiData(player, compound);
}
else if(type == EnumPacketServer.TagRemove){
TagController.getInstance().delete(buffer.readInt());
NoppesUtilServer.sendTagDataAll(player);
NBTTagCompound compound = new NBTTagCompound();
(new Tag()).writeNBT(compound);
- PacketUtil.sendGuiData(player, compound);
+ GuiDataPacket.sendGuiData(player, compound);
}
else if(type == EnumPacketServer.PlayerDataGet){
int id = buffer.readInt();
@@ -1040,21 +1044,21 @@ public class PacketHandlerServer{
NoppesUtilServer.regenPlayerData(player);
}
else if(type == EnumPacketServer.MainmenuDisplayGet){
- PacketUtil.sendGuiData(player, npc.display.writeToNBT(new NBTTagCompound()));
+ GuiDataPacket.sendGuiData(player, npc.display.writeToNBT(new NBTTagCompound()));
}
else if(type == EnumPacketServer.MainmenuDisplaySave){
npc.display.readToNBT(ByteBufUtils.readNBT(buffer));
npc.updateClient = true;
}
else if(type == EnumPacketServer.MainmenuStatsGet){
- PacketUtil.sendGuiData(player, npc.stats.writeToNBT(new NBTTagCompound()));
+ GuiDataPacket.sendGuiData(player, npc.stats.writeToNBT(new NBTTagCompound()));
}
else if(type == EnumPacketServer.MainmenuStatsSave){
npc.stats.readToNBT(ByteBufUtils.readNBT(buffer));
npc.updateClient = true;
}
else if(type == EnumPacketServer.MainmenuInvGet){
- PacketUtil.sendGuiData(player, npc.inventory.writeEntityToNBT(new NBTTagCompound()));
+ GuiDataPacket.sendGuiData(player, npc.inventory.writeEntityToNBT(new NBTTagCompound()));
}
else if(type == EnumPacketServer.MainmenuInvSave){
npc.inventory.readEntityFromNBT(ByteBufUtils.readNBT(buffer));
@@ -1062,7 +1066,7 @@ public class PacketHandlerServer{
npc.updateClient = true;
}
else if(type == EnumPacketServer.MainmenuAIGet){
- PacketUtil.sendGuiData(player, npc.ai.writeToNBT(new NBTTagCompound()));
+ GuiDataPacket.sendGuiData(player, npc.ai.writeToNBT(new NBTTagCompound()));
}
else if(type == EnumPacketServer.MainmenuAISave){
npc.ai.readToNBT(ByteBufUtils.readNBT(buffer));
@@ -1071,7 +1075,7 @@ public class PacketHandlerServer{
npc.updateClient = true;
}
else if(type == EnumPacketServer.MainmenuAdvancedGet){
- PacketUtil.sendGuiData(player, npc.advanced.writeToNBT(new NBTTagCompound()));
+ GuiDataPacket.sendGuiData(player, npc.advanced.writeToNBT(new NBTTagCompound()));
}
else if(type == EnumPacketServer.MainmenuAdvancedSave){
npc.advanced.readToNBT(ByteBufUtils.readNBT(buffer));
@@ -1102,10 +1106,10 @@ public class PacketHandlerServer{
if(npc.advanced.job == EnumJobType.Spawner)
((JobSpawner)npc.jobInterface).cleanCompound(compound);
- PacketUtil.sendGuiData(player, compound);
+ GuiDataPacket.sendGuiData(player, compound);
if(npc.advanced.job == EnumJobType.Spawner)
- PacketUtil.sendGuiData(player, ((JobSpawner)npc.jobInterface).getTitles());
+ GuiDataPacket.sendGuiData(player, ((JobSpawner)npc.jobInterface).getTitles());
}
else if(type == EnumPacketServer.JobSpawnerAdd){
if(npc.advanced.job != EnumJobType.Spawner)
@@ -1119,7 +1123,7 @@ public class PacketHandlerServer{
else{
job.setJobCompound(buffer.readInt(), ByteBufUtils.readNBT(buffer));
}
- PacketUtil.sendGuiData(player, job.getTitles());
+ GuiDataPacket.sendGuiData(player, job.getTitles());
}
else if(type == EnumPacketServer.RoleCompanionUpdate){
if(npc.advanced.role != EnumRoleType.Companion)
@@ -1132,7 +1136,7 @@ public class PacketHandlerServer{
return;
JobSpawner job = (JobSpawner) npc.jobInterface;
job.setJobCompound(buffer.readInt(), null);
- PacketUtil.sendGuiData(player, job.getTitles());
+ GuiDataPacket.sendGuiData(player, job.getTitles());
}
else if(type == EnumPacketServer.RoleSave){
npc.roleInterface.readFromNBT(ByteBufUtils.readNBT(buffer));
@@ -1143,7 +1147,7 @@ public class PacketHandlerServer{
return;
NBTTagCompound compound = new NBTTagCompound();
compound.setBoolean("RoleData", true);
- PacketUtil.sendGuiData(player, npc.roleInterface.writeToNBT(compound));
+ GuiDataPacket.sendGuiData(player, npc.roleInterface.writeToNBT(compound));
}
else if(type == EnumPacketServer.MerchantUpdate){
Entity entity = player.worldObj.getEntityByID(buffer.readInt());
@@ -1169,7 +1173,7 @@ public class PacketHandlerServer{
npc.updateAI = true;
}
else if(type == EnumPacketServer.TransformGet){
- PacketUtil.sendGuiData(player, npc.transform.writeOptions(new NBTTagCompound()));
+ GuiDataPacket.sendGuiData(player, npc.transform.writeOptions(new NBTTagCompound()));
}
else if(type == EnumPacketServer.TransformLoad){
if(npc.transform.isValid())
@@ -1193,20 +1197,20 @@ public class PacketHandlerServer{
else if(type == EnumPacketServer.AnimationGet){
Animation animation = (Animation) AnimationController.getInstance().get(buffer.readInt());
NBTTagCompound compound = animation.writeToNBT();
- PacketUtil.sendGuiData(player, compound);
+ GuiDataPacket.sendGuiData(player, compound);
}
else if(type == EnumPacketServer.AnimationRemove){
AnimationController.getInstance().delete(buffer.readInt());
NoppesUtilServer.sendAnimationDataAll(player);
NBTTagCompound compound = (new Animation()).writeToNBT();
- PacketUtil.sendGuiData(player, compound);
+ GuiDataPacket.sendGuiData(player, compound);
}
else if(type == EnumPacketServer.AnimationSave){
Animation animation = new Animation();
animation.readFromNBT(ByteBufUtils.readNBT(buffer));
AnimationController.getInstance().saveAnimation(animation);
NoppesUtilServer.sendAnimationDataAll(player);
- PacketUtil.sendGuiData(player, animation.writeToNBT());
+ GuiDataPacket.sendGuiData(player, animation.writeToNBT());
}
else
blockPackets(type, buffer, player);
@@ -1235,7 +1239,7 @@ public class PacketHandlerServer{
compound.setTag("List", list);
compound.setTag("ListDate", listDate);
- PacketUtil.sendGuiData(player, compound);
+ GuiDataPacket.sendGuiData(player, compound);
}
else
warn(player,"WE 1 tried todo something with the wrong tool, probably a hacker");
@@ -1291,7 +1295,7 @@ public class PacketHandlerServer{
boolean bo = ServerCloneController.Instance.getCloneData(null, ByteBufUtils.readString(buffer), buffer.readInt()) != null;
NBTTagCompound compound = new NBTTagCompound();
compound.setBoolean("NameExists", bo);
- PacketUtil.sendGuiData(player, compound);
+ GuiDataPacket.sendGuiData(player, compound);
}
else if(type == EnumPacketServer.CloneSave){
PlayerData data = PlayerDataController.Instance.getPlayerData(player);
@@ -1323,7 +1327,7 @@ public class PacketHandlerServer{
compound.setTag("List", list);
compound.setTag("ListDate", listDate);
- PacketUtil.sendGuiData(player, compound);
+ GuiDataPacket.sendGuiData(player, compound);
}
else if(type == EnumPacketServer.CloneList){
NBTTagList list = new NBTTagList();
@@ -1339,14 +1343,14 @@ public class PacketHandlerServer{
compound.setTag("List", list);
compound.setTag("ListDate", listDate);
- PacketUtil.sendGuiData(player, compound);
+ GuiDataPacket.sendGuiData(player, compound);
}
else if (type == EnumPacketServer.CloneTagList) {
int tab = buffer.readInt();
TagMap tagMap = ServerTagMapController.Instance.getTagMap(tab);
NBTTagCompound compound = new NBTTagCompound();
compound.setTag("CloneTags", tagMap.writeNBT());
- PacketUtil.sendGuiData(player, compound);
+ GuiDataPacket.sendGuiData(player, compound);
}
else if (type == EnumPacketServer.CloneAllTags) {
NBTTagCompound compound = new NBTTagCompound();
@@ -1358,7 +1362,7 @@ public class PacketHandlerServer{
validTagList.appendTag(tagCompound);
}
compound.setTag("AllTags", validTagList);
- PacketUtil.sendGuiData(player, compound);
+ GuiDataPacket.sendGuiData(player, compound);
}
else if (type == EnumPacketServer.CloneAllTagsShort) {
NBTTagCompound compound = new NBTTagCompound();
@@ -1370,7 +1374,7 @@ public class PacketHandlerServer{
validTagList.appendTag(tagCompound);
}
compound.setTag("ShortTags", validTagList);
- PacketUtil.sendGuiData(player, compound);
+ GuiDataPacket.sendGuiData(player, compound);
}
else if (type == EnumPacketServer.TagSet) {
EntityNPCInterface npc = NoppesUtilServer.getEditingNpc(player);
diff --git a/src/main/java/noppes/npcs/ServerEventsHandler.java b/src/main/java/noppes/npcs/ServerEventsHandler.java
index c9e933f70..f4b40de2a 100644
--- a/src/main/java/noppes/npcs/ServerEventsHandler.java
+++ b/src/main/java/noppes/npcs/ServerEventsHandler.java
@@ -5,15 +5,15 @@ import cpw.mods.fml.common.eventhandler.SubscribeEvent;
import cpw.mods.fml.relauncher.Side;
import kamkeel.npcs.controllers.SyncController;
import kamkeel.npcs.network.PacketHandler;
-import kamkeel.npcs.network.PacketUtil;
import kamkeel.npcs.network.enums.EnumSoundOperation;
import kamkeel.npcs.network.enums.EnumSyncAction;
import kamkeel.npcs.network.enums.EnumSyncType;
-import kamkeel.npcs.network.packets.client.MarkDataPacket;
-import kamkeel.npcs.network.packets.client.SoundManagementPacket;
-import kamkeel.npcs.network.packets.client.VillagerListPacket;
-import kamkeel.npcs.network.packets.client.large.LargeClonerPacket;
-import kamkeel.npcs.network.packets.client.large.LargeSyncPacket;
+import kamkeel.npcs.network.packets.data.MarkDataPacket;
+import kamkeel.npcs.network.packets.data.SoundManagementPacket;
+import kamkeel.npcs.network.packets.data.VillagerListPacket;
+import kamkeel.npcs.network.packets.data.gui.GuiOpenPacket;
+import kamkeel.npcs.network.packets.data.ClonerPacket;
+import kamkeel.npcs.network.packets.data.large.SyncPacket;
import net.minecraft.block.Block;
import net.minecraft.entity.Entity;
import net.minecraft.entity.EntityList;
@@ -26,7 +26,6 @@ import net.minecraft.init.Items;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.server.MinecraftServer;
-import net.minecraft.util.ChatComponentText;
import net.minecraft.util.ChatComponentTranslation;
import net.minecraft.util.MathHelper;
import net.minecraft.util.StatCollector;
@@ -101,7 +100,7 @@ public class ServerEventsHandler {
return;
PlayerData data = PlayerDataController.Instance.getPlayerData(event.entityPlayer);
ServerCloneController.Instance.cleanTags(compound);
- PacketHandler.Instance.sendToPlayer(new LargeClonerPacket(compound), (EntityPlayerMP)event.entityPlayer);
+ PacketHandler.Instance.sendToPlayer(new ClonerPacket(compound), (EntityPlayerMP)event.entityPlayer);
data.cloned = compound;
if (event.target instanceof EntityNPCInterface) {
NoppesUtilServer.setEditingNpc(event.entityPlayer, (EntityNPCInterface) event.target);
@@ -113,7 +112,7 @@ public class ServerEventsHandler {
return;
NoppesUtilServer.setEditingNpc(event.entityPlayer, (EntityNPCInterface)event.target);
event.setCanceled(true);
- PacketUtil.openGUI((EntityPlayerMP)event.entityPlayer, EnumGuiType.Script, 0, 0, 0);
+ GuiOpenPacket.openGUI((EntityPlayerMP)event.entityPlayer, EnumGuiType.Script, 0, 0, 0);
if(ConfigDebug.PlayerLogging && FMLCommonHandler.instance().getEffectiveSide() == Side.SERVER){
LogWriter.script(String.format("[%s] (Player) %s OPEN NPC %s (%s, %s, %s) [%s]", "SCRIPTER", event.entityPlayer.getCommandSenderName(), ((EntityNPCInterface)(event.target)).display.getName(), (int)(event.target).posX, (int)(event.target).posY, (int)(event.target).posZ, (event.target).worldObj.getWorldInfo().getWorldName()));
}
@@ -199,7 +198,7 @@ public class ServerEventsHandler {
}
if(block == Blocks.crafting_table && event.action == Action.RIGHT_CLICK_BLOCK && !player.worldObj.isRemote){
- PacketHandler.Instance.sendToPlayer(new LargeSyncPacket(
+ PacketHandler.Instance.sendToPlayer(new SyncPacket(
EnumSyncType.WORKBENCH_RECIPES,
EnumSyncAction.RELOAD,
-1,
@@ -207,7 +206,7 @@ public class ServerEventsHandler {
), (EntityPlayerMP) player);
}
if(block == CustomItems.carpentyBench && event.action == Action.RIGHT_CLICK_BLOCK && !player.worldObj.isRemote){
- PacketHandler.Instance.sendToPlayer(new LargeSyncPacket(
+ PacketHandler.Instance.sendToPlayer(new SyncPacket(
EnumSyncType.CARPENTRY_RECIPES,
EnumSyncAction.RELOAD,
-1,
diff --git a/src/main/java/noppes/npcs/blocks/BlockBook.java b/src/main/java/noppes/npcs/blocks/BlockBook.java
index c67fa3ebe..da673fe96 100644
--- a/src/main/java/noppes/npcs/blocks/BlockBook.java
+++ b/src/main/java/noppes/npcs/blocks/BlockBook.java
@@ -1,7 +1,7 @@
package noppes.npcs.blocks;
import kamkeel.npcs.network.PacketHandler;
-import kamkeel.npcs.network.packets.client.gui.GuiOpenBookPacket;
+import kamkeel.npcs.network.packets.data.gui.GuiOpenBookPacket;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.init.Blocks;
diff --git a/src/main/java/noppes/npcs/blocks/BlockMailbox.java b/src/main/java/noppes/npcs/blocks/BlockMailbox.java
index c10056be7..df28b6364 100644
--- a/src/main/java/noppes/npcs/blocks/BlockMailbox.java
+++ b/src/main/java/noppes/npcs/blocks/BlockMailbox.java
@@ -2,7 +2,7 @@ package noppes.npcs.blocks;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
-import kamkeel.npcs.network.PacketUtil;
+import kamkeel.npcs.network.packets.data.gui.GuiOpenPacket;
import net.minecraft.block.BlockContainer;
import net.minecraft.block.material.Material;
import net.minecraft.client.renderer.texture.IIconRegister;
@@ -41,7 +41,7 @@ public class BlockMailbox extends BlockContainer{
@Override
public boolean onBlockActivated(World par1World, int i, int j, int k, EntityPlayer player, int par6, float par7, float par8, float par9){
if(!par1World.isRemote){
- PacketUtil.openGUI((EntityPlayerMP)player, EnumGuiType.PlayerMailbox, i, j, k);
+ GuiOpenPacket.openGUI((EntityPlayerMP)player, EnumGuiType.PlayerMailbox, i, j, k);
}
return true;
}
diff --git a/src/main/java/noppes/npcs/constants/EnumPlayerPacket.java b/src/main/java/noppes/npcs/constants/EnumPlayerPacket.java
index 4834c9d25..dbd05a62e 100644
--- a/src/main/java/noppes/npcs/constants/EnumPlayerPacket.java
+++ b/src/main/java/noppes/npcs/constants/EnumPlayerPacket.java
@@ -1,9 +1,29 @@
package noppes.npcs.constants;
public enum EnumPlayerPacket {
- FollowerHire,FollowerExtend,Trader, FollowerState, Transport, BankUnlock, BankUpgrade,
- Dialog, QuestLog, TrackedQuest, CheckQuestCompletion, BankSlotOpen, FactionsGet,
- MailGet, MailDelete, MailSend, MailRead, MailboxOpenMail,
- SignSave, SaveBook, CompanionOpenInv, RoleGet, KeyPressed,
- MouseClicked, CompanionTalentExp, ScreenSize, MarkData
+ FollowerHire,
+ FollowerExtend,
+ FollowerState,
+ Transport,
+ BankUnlock,
+ BankUpgrade,
+ Dialog,
+ QuestLog,
+ TrackedQuest,
+ CheckQuestCompletion,
+ BankSlotOpen,
+ FactionsGet,
+ MailGet,
+ MailDelete,
+ MailSend,
+ MailRead,
+ MailboxOpenMail,
+ SignSave,
+ SaveBook,
+ CompanionOpenInv,
+ RoleGet,
+ KeyPressed,
+ MouseClicked,
+ CompanionTalentExp,
+ ScreenSize
}
diff --git a/src/main/java/noppes/npcs/controllers/CustomGuiController.java b/src/main/java/noppes/npcs/controllers/CustomGuiController.java
index c0800dce5..2e1423820 100644
--- a/src/main/java/noppes/npcs/controllers/CustomGuiController.java
+++ b/src/main/java/noppes/npcs/controllers/CustomGuiController.java
@@ -2,8 +2,8 @@ package noppes.npcs.controllers;
import io.netty.buffer.ByteBuf;
import kamkeel.npcs.network.PacketHandler;
-import kamkeel.npcs.network.PacketUtil;
-import kamkeel.npcs.network.packets.client.script.ScriptOverlayDataPacket;
+import kamkeel.npcs.network.packets.data.large.GuiDataPacket;
+import kamkeel.npcs.network.packets.data.script.ScriptOverlayDataPacket;
import kamkeel.npcs.util.ByteBufUtils;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.EntityPlayerMP;
@@ -29,13 +29,13 @@ public class CustomGuiController {
EntityPlayerMP entityPlayerMP = (EntityPlayerMP) player.getMCEntity();
entityPlayerMP.openGui(CustomNpcs.instance, EnumGuiType.CustomGui.ordinal(), player.getWorld().getMCWorld(), gui.getSlots().size(), 0, 0);
((ContainerCustomGui)((EntityPlayerMP)player.getMCEntity()).openContainer).setGui(gui, (EntityPlayer)player.getMCEntity());
- PacketUtil.sendGuiData((EntityPlayerMP)player.getMCEntity(), gui.toNBT());
+ GuiDataPacket.sendGuiData((EntityPlayerMP)player.getMCEntity(), gui.toNBT());
}
public static boolean updateGui(IPlayer player, ScriptGui gui) {
if (((EntityPlayerMP)player.getMCEntity()).openContainer instanceof ContainerCustomGui) {
((ContainerCustomGui)((EntityPlayerMP)player.getMCEntity()).openContainer).setGui(gui, (EntityPlayer)player.getMCEntity());
- PacketUtil.sendGuiData((EntityPlayerMP)player.getMCEntity(), gui.toNBT());
+ GuiDataPacket.sendGuiData((EntityPlayerMP)player.getMCEntity(), gui.toNBT());
return true;
} else {
return false;
diff --git a/src/main/java/noppes/npcs/controllers/PartyController.java b/src/main/java/noppes/npcs/controllers/PartyController.java
index 98e152e97..4dcad43f3 100644
--- a/src/main/java/noppes/npcs/controllers/PartyController.java
+++ b/src/main/java/noppes/npcs/controllers/PartyController.java
@@ -1,6 +1,8 @@
package noppes.npcs.controllers;
-import kamkeel.npcs.network.PacketUtil;
+import kamkeel.npcs.network.packets.data.AchievementPacket;
+import kamkeel.npcs.network.packets.data.ChatAlertPacket;
+import kamkeel.npcs.network.packets.data.large.PartyDataPacket;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.nbt.NBTTagCompound;
@@ -67,8 +69,8 @@ public class PartyController {
playerData.partyUUID = null;
if(player != null){
sendInviteData((EntityPlayerMP) player);
- PacketUtil.sendAchievement((EntityPlayerMP) player, true, "party.disbandAlert", "");
- PacketUtil.sendChatAlert((EntityPlayerMP) player, "\u00A7c", "party.disbandMessage", "!");
+ AchievementPacket.sendAchievement((EntityPlayerMP) player, true, "party.disbandAlert", "");
+ ChatAlertPacket.sendChatAlert((EntityPlayerMP) player, "\u00A7c", "party.disbandMessage", "!");
}
}
}
@@ -83,14 +85,14 @@ public class PartyController {
for(String name : party.getPlayerNames()){
EntityPlayer playerMP = NoppesUtilServer.getPlayerByName(name);
if(playerMP != null){
- PacketUtil.sendAchievement((EntityPlayerMP) playerMP, true, "party.kickOtherAlert", kickPlayerName);
- PacketUtil.sendChatAlert((EntityPlayerMP) playerMP, "\u00A7e", kickPlayerName, " \u00A74", "party.kickOtherChat", "!");
+ AchievementPacket.sendAchievement((EntityPlayerMP) playerMP, true, "party.kickOtherAlert", kickPlayerName);
+ ChatAlertPacket.sendChatAlert((EntityPlayerMP) playerMP, "\u00A7e", kickPlayerName, " \u00A74", "party.kickOtherChat", "!");
}
}
if(kickPlayer != null){
- PacketUtil.sendAchievement((EntityPlayerMP) kickPlayer, true, "party.kickYouAlert", "");
- PacketUtil.sendChatAlert((EntityPlayerMP) kickPlayer, "\u00A74", "party.kickYouChat", "!");
+ AchievementPacket.sendAchievement((EntityPlayerMP) kickPlayer, true, "party.kickYouAlert", "");
+ ChatAlertPacket.sendChatAlert((EntityPlayerMP) kickPlayer, "\u00A74", "party.kickYouChat", "!");
}
}
@@ -101,12 +103,12 @@ public class PartyController {
for(String name : party.getPlayerNames()){
EntityPlayer playerMP = NoppesUtilServer.getPlayerByName(name);
if(playerMP != null){
- PacketUtil.sendAchievement((EntityPlayerMP) playerMP, true, "party.leaveOtherAlert", leavingPlayer.getCommandSenderName());
- PacketUtil.sendChatAlert((EntityPlayerMP) playerMP, "\u00A7e", leavingPlayer.getCommandSenderName(), " \u00A7c", "party.leaveOtherChat", "!");
+ AchievementPacket.sendAchievement((EntityPlayerMP) playerMP, true, "party.leaveOtherAlert", leavingPlayer.getCommandSenderName());
+ ChatAlertPacket.sendChatAlert((EntityPlayerMP) playerMP, "\u00A7e", leavingPlayer.getCommandSenderName(), " \u00A7c", "party.leaveOtherChat", "!");
}
}
- PacketUtil.sendAchievement((EntityPlayerMP) leavingPlayer, true, "party.leaveYouAlert", "");
- PacketUtil.sendChatAlert((EntityPlayerMP) leavingPlayer, "\u00A7c", "party.leaveYouChat", "!");
+ AchievementPacket.sendAchievement((EntityPlayerMP) leavingPlayer, true, "party.leaveYouAlert", "");
+ ChatAlertPacket.sendChatAlert((EntityPlayerMP) leavingPlayer, "\u00A7c", "party.leaveYouChat", "!");
}
public void pingPartyUpdate(Party party){
@@ -133,7 +135,7 @@ public class PartyController {
if(playerMP != null){
PlayerData playerData = PlayerDataController.Instance.getPlayerData(playerMP);
if(playerData != null){
- PacketUtil.sendPartyData((EntityPlayerMP) playerMP, compound);
+ PartyDataPacket.sendPartyData((EntityPlayerMP) playerMP, compound);
}
}
}
@@ -164,7 +166,7 @@ public class PartyController {
if(playerMP != null){
PlayerData playerData = PlayerDataController.Instance.getPlayerData(playerMP);
if(playerData != null){
- PacketUtil.sendPartyData((EntityPlayerMP) playerMP, compound);
+ PartyDataPacket.sendPartyData((EntityPlayerMP) playerMP, compound);
}
}
}
@@ -182,7 +184,7 @@ public class PartyController {
System.arraycopy(chatAlerts, 0, args, 1, chatAlerts.length);
args[args.length - 1] = "!"; // Add "!" at the end
- PacketUtil.sendChatAlert((EntityPlayerMP) playerMP, args);
+ ChatAlertPacket.sendChatAlert((EntityPlayerMP) playerMP, args);
}
}
}
diff --git a/src/main/java/noppes/npcs/controllers/PlayerQuestController.java b/src/main/java/noppes/npcs/controllers/PlayerQuestController.java
index df8c8b165..20d6236e3 100644
--- a/src/main/java/noppes/npcs/controllers/PlayerQuestController.java
+++ b/src/main/java/noppes/npcs/controllers/PlayerQuestController.java
@@ -1,6 +1,7 @@
package noppes.npcs.controllers;
-import kamkeel.npcs.network.PacketUtil;
+import kamkeel.npcs.network.packets.data.AchievementPacket;
+import kamkeel.npcs.network.packets.data.ChatAlertPacket;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.util.ChatComponentTranslation;
@@ -44,8 +45,8 @@ public class PlayerQuestController {
data.activeQuests.put(questData.quest.id,questData);
if (questData.sendAlerts) {
- PacketUtil.sendAchievement((EntityPlayerMP) player, false, "quest.newquest", questData.quest.title);
- PacketUtil.sendChatAlert((EntityPlayerMP) player, "quest.newquest", ": ", questData.quest.title);
+ AchievementPacket.sendAchievement((EntityPlayerMP) player, false, "quest.newquest", questData.quest.title);
+ ChatAlertPacket.sendChatAlert((EntityPlayerMP) player, "quest.newquest", ": ", questData.quest.title);
}
playerData.updateClient = true;
} else {
@@ -75,8 +76,8 @@ public class PlayerQuestController {
}
}
if (questData != null && questData.sendAlerts) {
- PacketUtil.sendAchievement((EntityPlayerMP) player, false, "quest.completed", questData.quest.title);
- PacketUtil.sendChatAlert((EntityPlayerMP) player, "quest.completed", ": ", questData.quest.title);
+ AchievementPacket.sendAchievement((EntityPlayerMP) player, false, "quest.completed", questData.quest.title);
+ ChatAlertPacket.sendChatAlert((EntityPlayerMP) player, "quest.completed", ": ", questData.quest.title);
}
playerdata.updateClient = true;
}
@@ -97,8 +98,8 @@ public class PlayerQuestController {
}
}
if (questData != null && questData.sendAlerts) {
- PacketUtil.sendAchievement((EntityPlayerMP) player, false, "quest.completed", questData.quest.title);
- PacketUtil.sendChatAlert((EntityPlayerMP) player, "quest.completed", ": ", questData.quest.title);
+ AchievementPacket.sendAchievement((EntityPlayerMP) player, false, "quest.completed", questData.quest.title);
+ ChatAlertPacket.sendChatAlert((EntityPlayerMP) player, "quest.completed", ": ", questData.quest.title);
}
playerdata.updateClient = true;
}
diff --git a/src/main/java/noppes/npcs/controllers/data/BankData.java b/src/main/java/noppes/npcs/controllers/data/BankData.java
index 04525077e..d08001f18 100644
--- a/src/main/java/noppes/npcs/controllers/data/BankData.java
+++ b/src/main/java/noppes/npcs/controllers/data/BankData.java
@@ -1,6 +1,6 @@
package noppes.npcs.controllers.data;
-import kamkeel.npcs.network.PacketUtil;
+import kamkeel.npcs.network.packets.data.large.GuiDataPacket;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.inventory.Container;
@@ -108,7 +108,7 @@ public class BankData {
container.setCurrency(item);
}
- PacketUtil.sendGuiData((EntityPlayerMP) player, compound);
+ GuiDataPacket.sendGuiData((EntityPlayerMP) player, compound);
}
private ContainerNPCBankInterface getContainer(EntityPlayer player){
Container con = player.openContainer;
diff --git a/src/main/java/noppes/npcs/controllers/data/PlayerData.java b/src/main/java/noppes/npcs/controllers/data/PlayerData.java
index b79f3f092..19f9a8396 100644
--- a/src/main/java/noppes/npcs/controllers/data/PlayerData.java
+++ b/src/main/java/noppes/npcs/controllers/data/PlayerData.java
@@ -1,7 +1,8 @@
package noppes.npcs.controllers.data;
import kamkeel.npcs.addon.DBCAddon;
-import kamkeel.npcs.network.PacketUtil;
+import kamkeel.npcs.network.packets.data.AchievementPacket;
+import kamkeel.npcs.network.packets.data.ChatAlertPacket;
import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.EntityPlayerMP;
@@ -265,8 +266,8 @@ public class PlayerData implements IExtendedEntityProperties, IPlayerData {
if (party != null && this.partyUUID == null && !this.partyInvites.contains(party.getPartyUUID())) {
this.partyInvites.add(party.getPartyUUID());
- PacketUtil.sendAchievement((EntityPlayerMP) player, true, "party.inviteAlert", party.getPartyLeader().getCommandSenderName());
- PacketUtil.sendChatAlert((EntityPlayerMP) player, "\u00A7a", "party.inviteChat", " ", party.getPartyLeader().getCommandSenderName(), "!");
+ AchievementPacket.sendAchievement((EntityPlayerMP) player, true, "party.inviteAlert", party.getPartyLeader().getCommandSenderName());
+ ChatAlertPacket.sendChatAlert((EntityPlayerMP) player, "\u00A7a", "party.inviteChat", " ", party.getPartyLeader().getCommandSenderName(), "!");
}
}
diff --git a/src/main/java/noppes/npcs/controllers/data/PlayerQuestData.java b/src/main/java/noppes/npcs/controllers/data/PlayerQuestData.java
index 7f984c1b6..134f80312 100644
--- a/src/main/java/noppes/npcs/controllers/data/PlayerQuestData.java
+++ b/src/main/java/noppes/npcs/controllers/data/PlayerQuestData.java
@@ -1,8 +1,9 @@
package noppes.npcs.controllers.data;
import kamkeel.npcs.network.PacketHandler;
-import kamkeel.npcs.network.PacketUtil;
-import kamkeel.npcs.network.packets.client.OverlayQuestTrackingPacket;
+import kamkeel.npcs.network.packets.data.AchievementPacket;
+import kamkeel.npcs.network.packets.data.ChatAlertPacket;
+import kamkeel.npcs.network.packets.data.OverlayQuestTrackingPacket;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.nbt.NBTTagCompound;
@@ -219,8 +220,8 @@ public class PlayerQuestData implements IPlayerQuestData {
QuestData questdata = new QuestData(quest);
activeQuests.put(id, questdata);
- PacketUtil.sendAchievement((EntityPlayerMP) parent.player, false, "quest.newquest", quest.title);
- PacketUtil.sendChatAlert((EntityPlayerMP) parent.player, "quest.newquest", ": ", quest.title);
+ AchievementPacket.sendAchievement((EntityPlayerMP) parent.player, false, "quest.newquest", quest.title);
+ ChatAlertPacket.sendChatAlert((EntityPlayerMP) parent.player, "quest.newquest", ": ", quest.title);
parent.updateClient = true;
}
diff --git a/src/main/java/noppes/npcs/controllers/data/Quest.java b/src/main/java/noppes/npcs/controllers/data/Quest.java
index 8bed1a782..0643b20c9 100644
--- a/src/main/java/noppes/npcs/controllers/data/Quest.java
+++ b/src/main/java/noppes/npcs/controllers/data/Quest.java
@@ -1,6 +1,6 @@
package noppes.npcs.controllers.data;
-import kamkeel.npcs.network.PacketUtil;
+import kamkeel.npcs.network.packets.data.QuestCompletionPacket;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.nbt.NBTTagCompound;
@@ -139,7 +139,7 @@ public class Quest implements ICompatibilty, IQuest {
public boolean instantComplete(EntityPlayer player, QuestData data) {
if(completion == EnumQuestCompletion.Instant && NoppesUtilPlayer.questCompletion((EntityPlayerMP) player, data.quest.id)){
- PacketUtil.sendQuestComplete((EntityPlayerMP)player, data.quest.writeToNBT(new NBTTagCompound()));
+ QuestCompletionPacket.sendQuestComplete((EntityPlayerMP)player, data.quest.writeToNBT(new NBTTagCompound()));
return true;
}
return false;
diff --git a/src/main/java/noppes/npcs/entity/EntityNPCInterface.java b/src/main/java/noppes/npcs/entity/EntityNPCInterface.java
index 5a54dc177..6d5adbd45 100644
--- a/src/main/java/noppes/npcs/entity/EntityNPCInterface.java
+++ b/src/main/java/noppes/npcs/entity/EntityNPCInterface.java
@@ -8,12 +8,12 @@ import io.netty.buffer.ByteBuf;
import kamkeel.npcs.addon.DBCAddon;
import kamkeel.npcs.addon.client.DBCClient;
import kamkeel.npcs.network.PacketHandler;
-import kamkeel.npcs.network.PacketUtil;
import kamkeel.npcs.network.enums.EnumSoundOperation;
-import kamkeel.npcs.network.packets.client.ChatBubblePacket;
-import kamkeel.npcs.network.packets.client.SoundManagementPacket;
-import kamkeel.npcs.network.packets.client.npc.UpdateNpcPacket;
-import kamkeel.npcs.network.packets.client.npc.WeaponNpcPacket;
+import kamkeel.npcs.network.packets.data.ChatBubblePacket;
+import kamkeel.npcs.network.packets.data.QuestCompletionPacket;
+import kamkeel.npcs.network.packets.data.SoundManagementPacket;
+import kamkeel.npcs.network.packets.data.npc.UpdateNpcPacket;
+import kamkeel.npcs.network.packets.data.npc.WeaponNpcPacket;
import kamkeel.npcs.util.ByteBufUtils;
import net.minecraft.block.Block;
import net.minecraft.block.material.Material;
@@ -454,7 +454,7 @@ public abstract class EntityNPCInterface extends EntityCreature implements IEnti
}
else if (data != null){
NoppesUtilPlayer.questCompletion((EntityPlayerMP) player, data.quest.id);
- PacketUtil.sendQuestComplete((EntityPlayerMP)player, data.quest.writeToNBT(new NBTTagCompound()));
+ QuestCompletionPacket.sendQuestComplete((EntityPlayerMP)player, data.quest.writeToNBT(new NBTTagCompound()));
}
else if (dialog != null){
NoppesUtilServer.openDialog(player, this, dialog, 0);
diff --git a/src/main/java/noppes/npcs/scripted/entity/ScriptPlayer.java b/src/main/java/noppes/npcs/scripted/entity/ScriptPlayer.java
index 34297e9b4..86485c5b6 100644
--- a/src/main/java/noppes/npcs/scripted/entity/ScriptPlayer.java
+++ b/src/main/java/noppes/npcs/scripted/entity/ScriptPlayer.java
@@ -1,8 +1,10 @@
package noppes.npcs.scripted.entity;
import kamkeel.npcs.network.PacketHandler;
-import kamkeel.npcs.network.PacketUtil;
-import kamkeel.npcs.network.packets.client.script.ScriptOverlayClosePacket;
+import kamkeel.npcs.network.packets.data.AchievementPacket;
+import kamkeel.npcs.network.packets.data.ChatAlertPacket;
+import kamkeel.npcs.network.packets.data.gui.GuiClosePacket;
+import kamkeel.npcs.network.packets.data.script.ScriptOverlayClosePacket;
import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.item.Item;
@@ -265,8 +267,8 @@ public class ScriptPlayer extends ScriptLivingBase
QuestData questdata = new QuestData(quest);
data.questData.activeQuests.put(id, questdata);
- PacketUtil.sendAchievement((EntityPlayerMP) player, false, "quest.newquest", quest.title);
- PacketUtil.sendChatAlert((EntityPlayerMP) player, "quest.newquest", ": ", quest.title);
+ AchievementPacket.sendAchievement((EntityPlayerMP) player, false, "quest.newquest", quest.title);
+ ChatAlertPacket.sendChatAlert((EntityPlayerMP) player, "quest.newquest", ": ", quest.title);
data.updateClient = true;
}
@@ -758,7 +760,7 @@ public class ScriptPlayer extends ScriptLivingBase
public void closeGui() {
((EntityPlayerMP)this.entity).closeContainer();
- PacketUtil.closeGUI(player, -1 , new NBTTagCompound());
+ GuiClosePacket.closeGUI(player, -1 , new NBTTagCompound());
}
public void showCustomOverlay(ICustomOverlay overlay) {
From 68404d353f513dede791e62f818a72653f9cfbcc Mon Sep 17 00:00:00 2001
From: Kam
Date: Thu, 30 Jan 2025 13:54:55 -0500
Subject: [PATCH 039/357] more Data packet
---
src/main/java/kamkeel/npcs/command/ConfigCommand.java | 2 +-
src/main/java/noppes/npcs/blocks/BlockNpcRedstone.java | 2 +-
src/main/java/noppes/npcs/blocks/BlockWaypoint.java | 2 +-
src/main/java/noppes/npcs/controllers/data/AnimationData.java | 2 +-
src/main/java/noppes/npcs/controllers/data/MarkData.java | 2 +-
src/main/java/noppes/npcs/entity/data/DataSkinOverlays.java | 2 +-
6 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/src/main/java/kamkeel/npcs/command/ConfigCommand.java b/src/main/java/kamkeel/npcs/command/ConfigCommand.java
index 1f9dee87d..f31a1dc18 100644
--- a/src/main/java/kamkeel/npcs/command/ConfigCommand.java
+++ b/src/main/java/kamkeel/npcs/command/ConfigCommand.java
@@ -3,7 +3,7 @@ package kamkeel.npcs.command;
import foxz.utils.Market;
import kamkeel.npcs.network.PacketHandler;
import kamkeel.npcs.network.enums.EnumConfigOperation;
-import kamkeel.npcs.network.packets.client.ConfigCommandPacket;
+import kamkeel.npcs.network.packets.data.ConfigCommandPacket;
import net.minecraft.block.Block;
import net.minecraft.block.BlockIce;
import net.minecraft.block.BlockLeavesBase;
diff --git a/src/main/java/noppes/npcs/blocks/BlockNpcRedstone.java b/src/main/java/noppes/npcs/blocks/BlockNpcRedstone.java
index fb595bb0b..70c5488a3 100644
--- a/src/main/java/noppes/npcs/blocks/BlockNpcRedstone.java
+++ b/src/main/java/noppes/npcs/blocks/BlockNpcRedstone.java
@@ -1,7 +1,7 @@
package noppes.npcs.blocks;
import kamkeel.npcs.network.PacketHandler;
-import kamkeel.npcs.network.packets.client.gui.GuiRedstonePacket;
+import kamkeel.npcs.network.packets.data.gui.GuiRedstonePacket;
import net.minecraft.block.BlockContainer;
import net.minecraft.block.material.Material;
import net.minecraft.entity.EntityLivingBase;
diff --git a/src/main/java/noppes/npcs/blocks/BlockWaypoint.java b/src/main/java/noppes/npcs/blocks/BlockWaypoint.java
index caff78b41..7920b46d9 100644
--- a/src/main/java/noppes/npcs/blocks/BlockWaypoint.java
+++ b/src/main/java/noppes/npcs/blocks/BlockWaypoint.java
@@ -1,7 +1,7 @@
package noppes.npcs.blocks;
import kamkeel.npcs.network.PacketHandler;
-import kamkeel.npcs.network.packets.client.gui.GuiWaypointPacket;
+import kamkeel.npcs.network.packets.data.gui.GuiWaypointPacket;
import net.minecraft.block.BlockContainer;
import net.minecraft.block.material.Material;
import net.minecraft.entity.EntityLivingBase;
diff --git a/src/main/java/noppes/npcs/controllers/data/AnimationData.java b/src/main/java/noppes/npcs/controllers/data/AnimationData.java
index 82e6abcac..0b27f1e05 100644
--- a/src/main/java/noppes/npcs/controllers/data/AnimationData.java
+++ b/src/main/java/noppes/npcs/controllers/data/AnimationData.java
@@ -4,7 +4,7 @@ package noppes.npcs.controllers.data;
import cpw.mods.fml.common.FMLCommonHandler;
import cpw.mods.fml.relauncher.Side;
import kamkeel.npcs.network.PacketHandler;
-import kamkeel.npcs.network.packets.client.UpdateAnimationsPacket;
+import kamkeel.npcs.network.packets.data.UpdateAnimationsPacket;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.EntityPlayerMP;
diff --git a/src/main/java/noppes/npcs/controllers/data/MarkData.java b/src/main/java/noppes/npcs/controllers/data/MarkData.java
index 3f50be35f..15f89ddda 100644
--- a/src/main/java/noppes/npcs/controllers/data/MarkData.java
+++ b/src/main/java/noppes/npcs/controllers/data/MarkData.java
@@ -1,7 +1,7 @@
package noppes.npcs.controllers.data;
import kamkeel.npcs.network.PacketHandler;
-import kamkeel.npcs.network.packets.client.MarkDataPacket;
+import kamkeel.npcs.network.packets.data.MarkDataPacket;
import net.minecraft.entity.Entity;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.nbt.NBTTagCompound;
diff --git a/src/main/java/noppes/npcs/entity/data/DataSkinOverlays.java b/src/main/java/noppes/npcs/entity/data/DataSkinOverlays.java
index 7ae32545b..92b408696 100644
--- a/src/main/java/noppes/npcs/entity/data/DataSkinOverlays.java
+++ b/src/main/java/noppes/npcs/entity/data/DataSkinOverlays.java
@@ -1,7 +1,7 @@
package noppes.npcs.entity.data;
import kamkeel.npcs.network.PacketHandler;
-import kamkeel.npcs.network.packets.client.PlayerUpdateSkinOverlaysPacket;
+import kamkeel.npcs.network.packets.data.PlayerUpdateSkinOverlaysPacket;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.nbt.NBTTagList;
import noppes.npcs.api.ISkinOverlay;
From 702df25036028d94843c7319b8f54622d896a9cc Mon Sep 17 00:00:00 2001
From: Kam
Date: Thu, 30 Jan 2025 13:58:09 -0500
Subject: [PATCH 040/357] Reorganization again
---
.../kamkeel/npcs/network/PacketChannel.java | 10 ++--
.../kamkeel/npcs/network/PacketHandler.java | 18 +++---
...umPacketType.java => EnumChannelType.java} | 2 +-
.../npcs/network/enums/EnumClientPacket.java | 58 -------------------
.../npcs/network/enums/EnumDataPacket.java | 55 ++++++++++++++++++
...mInfoPacket.java => EnumPlayerPacket.java} | 2 +-
.../packets/data/AchievementPacket.java | 4 +-
.../network/packets/data/ChatAlertPacket.java | 4 +-
.../packets/data/ChatBubblePacket.java | 4 +-
.../network/packets/data/ClonerPacket.java | 4 +-
.../packets/data/ConfigCommandPacket.java | 4 +-
.../packets/data/DisableMouseInputPacket.java | 4 +-
.../network/packets/data/LoginPacket.java | 4 +-
.../network/packets/data/MarkDataPacket.java | 4 +-
.../data/OverlayQuestTrackingPacket.java | 4 +-
.../network/packets/data/ParticlePacket.java | 4 +-
.../data/PlayerUpdateSkinOverlaysPacket.java | 4 +-
.../packets/data/QuestCompletionPacket.java | 4 +-
.../packets/data/ScrollSelectedPacket.java | 4 +-
.../packets/data/SoundManagementPacket.java | 4 +-
.../packets/data/SwingPlayerArmPacket.java | 4 +-
.../packets/data/UpdateAnimationsPacket.java | 4 +-
.../packets/data/VillagerListPacket.java | 4 +-
.../packets/data/gui/GuiClosePacket.java | 4 +-
.../packets/data/gui/GuiErrorPacket.java | 4 +-
.../packets/data/gui/GuiOpenBookPacket.java | 4 +-
.../packets/data/gui/GuiOpenPacket.java | 4 +-
.../packets/data/gui/GuiRedstonePacket.java | 4 +-
.../packets/data/gui/GuiTeleporterPacket.java | 4 +-
.../packets/data/gui/GuiWaypointPacket.java | 4 +-
.../packets/data/gui/IsGuiOpenPacket.java | 4 +-
.../packets/data/large/GuiDataPacket.java | 4 +-
.../packets/data/large/PartyDataPacket.java | 4 +-
.../packets/data/large/ScrollDataPacket.java | 4 +-
.../packets/data/large/ScrollGroupPacket.java | 4 +-
.../packets/data/large/ScrollListPacket.java | 4 +-
.../packets/data/large/SyncPacket.java | 4 +-
.../packets/data/npc/DeleteNpcPacket.java | 4 +-
.../packets/data/npc/DialogPacket.java | 4 +-
.../packets/data/npc/EditNpcPacket.java | 4 +-
.../network/packets/data/npc/RolePacket.java | 4 +-
.../packets/data/npc/UpdateNpcPacket.java | 4 +-
.../packets/data/npc/WeaponNpcPacket.java | 4 +-
.../data/script/ScriptOverlayClosePacket.java | 4 +-
.../data/script/ScriptOverlayDataPacket.java | 4 +-
.../data/script/ScriptedParticlePacket.java | 4 +-
46 files changed, 151 insertions(+), 154 deletions(-)
rename src/main/java/kamkeel/npcs/network/enums/{EnumPacketType.java => EnumChannelType.java} (74%)
delete mode 100644 src/main/java/kamkeel/npcs/network/enums/EnumClientPacket.java
rename src/main/java/kamkeel/npcs/network/enums/{EnumInfoPacket.java => EnumPlayerPacket.java} (61%)
diff --git a/src/main/java/kamkeel/npcs/network/PacketChannel.java b/src/main/java/kamkeel/npcs/network/PacketChannel.java
index aae7eca34..d080f1239 100644
--- a/src/main/java/kamkeel/npcs/network/PacketChannel.java
+++ b/src/main/java/kamkeel/npcs/network/PacketChannel.java
@@ -1,6 +1,6 @@
package kamkeel.npcs.network;
-import kamkeel.npcs.network.enums.EnumPacketType;
+import kamkeel.npcs.network.enums.EnumChannelType;
import java.util.Hashtable;
import java.util.Map;
@@ -8,11 +8,11 @@ import java.util.Map;
public class PacketChannel {
private String channelName;
- private EnumPacketType channelType;
+ private EnumChannelType channelType;
public Map packets = new Hashtable<>();
- public PacketChannel(String channelName, EnumPacketType channelType) {
+ public PacketChannel(String channelName, EnumChannelType channelType) {
this.channelName = channelName;
this.channelType = channelType;
}
@@ -25,11 +25,11 @@ public class PacketChannel {
this.channelName = channelName;
}
- public EnumPacketType getChannelType() {
+ public EnumChannelType getChannelType() {
return channelType;
}
- public void setChannelType(EnumPacketType channelType) {
+ public void setChannelType(EnumChannelType channelType) {
this.channelType = channelType;
}
diff --git a/src/main/java/kamkeel/npcs/network/PacketHandler.java b/src/main/java/kamkeel/npcs/network/PacketHandler.java
index d3fcda649..a7774c739 100644
--- a/src/main/java/kamkeel/npcs/network/PacketHandler.java
+++ b/src/main/java/kamkeel/npcs/network/PacketHandler.java
@@ -6,7 +6,7 @@ import cpw.mods.fml.common.network.FMLNetworkEvent;
import cpw.mods.fml.common.network.NetworkRegistry;
import cpw.mods.fml.common.network.internal.FMLProxyPacket;
import io.netty.buffer.ByteBuf;
-import kamkeel.npcs.network.enums.EnumPacketType;
+import kamkeel.npcs.network.enums.EnumChannelType;
import kamkeel.npcs.network.packets.data.*;
import kamkeel.npcs.network.packets.data.gui.*;
import kamkeel.npcs.network.packets.data.large.*;
@@ -25,11 +25,11 @@ public final class PacketHandler {
public static PacketHandler Instance;
// Channels
- public Map channels = new Hashtable<>();
+ public Map